瀏覽代碼

Flush rendering if a texture palette is in use when destroyed

Sam Lantinga 11 月之前
父節點
當前提交
9d635fe641
共有 1 個文件被更改,包括 1 次插入 和 0 次删除
  1. 1 0
      src/render/SDL_render.c

+ 1 - 0
src/render/SDL_render.c

@@ -1941,6 +1941,7 @@ bool SDL_SetTexturePalette(SDL_Texture *texture, SDL_Palette *palette)
                 // Clean up the texture palette
                 // Clean up the texture palette
                 --texture->palette->refcount;
                 --texture->palette->refcount;
                 if (texture->palette->refcount == 0) {
                 if (texture->palette->refcount == 0) {
+                    FlushRenderCommandsIfPaletteNeeded(renderer, texture->palette);
                     renderer->DestroyPalette(renderer, texture->palette);
                     renderer->DestroyPalette(renderer, texture->palette);
                     SDL_RemoveFromHashTable(renderer->palettes, texture->public_palette);
                     SDL_RemoveFromHashTable(renderer->palettes, texture->public_palette);
                 }
                 }