From 3b2fbb1cb7f0ae7c569dd9abee0652eac51164c0 Mon Sep 17 00:00:00 2001
From: Northfear <[EMAIL REDACTED]>
Date: Mon, 20 Sep 2021 23:44:22 +0300
Subject: [PATCH] End current scene before destroying the texture on Vita
---
src/render/vitagxm/SDL_render_vita_gxm.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/src/render/vitagxm/SDL_render_vita_gxm.c b/src/render/vitagxm/SDL_render_vita_gxm.c
index bd9230f9e1..d3699cc4ad 100644
--- a/src/render/vitagxm/SDL_render_vita_gxm.c
+++ b/src/render/vitagxm/SDL_render_vita_gxm.c
@@ -1241,7 +1241,16 @@ VITA_GXM_DestroyTexture(SDL_Renderer *renderer, SDL_Texture *texture)
if(vita_texture->tex == 0)
return;
- sceGxmFinish(data->gxm_context);
+ // 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);
+ }
free_gxm_texture(vita_texture->tex);