From 529215639821f7a25a100a2b80af5f66068ba644 Mon Sep 17 00:00:00 2001 From: Northfear <11291116+Northfear@users.noreply.github.com> Date: Wed, 22 Sep 2021 21:23:42 +0300 Subject: [PATCH] End Scene on RunCommandQueue on Vita --- src/render/vitagxm/SDL_render_vita_gxm.c | 23 ++++++----------------- 1 file changed, 6 insertions(+), 17 deletions(-) diff --git a/src/render/vitagxm/SDL_render_vita_gxm.c b/src/render/vitagxm/SDL_render_vita_gxm.c index d3699cc4a..08177dd99 100644 --- a/src/render/vitagxm/SDL_render_vita_gxm.c +++ b/src/render/vitagxm/SDL_render_vita_gxm.c @@ -1084,6 +1084,9 @@ VITA_GXM_RunCommandQueue(SDL_Renderer * renderer, SDL_RenderCommand *cmd, void * cmd = cmd->next; } + sceGxmEndScene(data->gxm_context, NULL, NULL); + data->drawing = SDL_FALSE; + return 0; } @@ -1179,11 +1182,8 @@ VITA_GXM_RenderPresent(SDL_Renderer *renderer) VITA_GXM_RenderData *data = (VITA_GXM_RenderData *) renderer->driverdata; SceCommonDialogUpdateParam updateParam; - if (data->drawing) { - sceGxmEndScene(data->gxm_context, NULL, NULL); - if (data->displayData.wait_vblank) { - sceGxmFinish(data->gxm_context); - } + if (data->displayData.wait_vblank) { + sceGxmFinish(data->gxm_context); } data->displayData.address = data->displayBufferData[data->backBufferIndex]; @@ -1222,8 +1222,6 @@ VITA_GXM_RenderPresent(SDL_Renderer *renderer) data->pool_index = 0; data->current_pool = (data->current_pool + 1) % 2; - - data->drawing = SDL_FALSE; } static void @@ -1241,16 +1239,7 @@ VITA_GXM_DestroyTexture(SDL_Renderer *renderer, SDL_Texture *texture) if(vita_texture->tex == 0) return; - // make sure that texture isn't used - if (data->drawing) { - sceGxmEndScene(data->gxm_context, NULL, NULL); - data->drawing = SDL_FALSE; - sceGxmFinish(data->gxm_context); - StartDrawing(renderer); - } - else { - sceGxmFinish(data->gxm_context); - } + sceGxmFinish(data->gxm_context); free_gxm_texture(vita_texture->tex);