Skip to content

Commit

Permalink
Just roll back the entire portion of the commit from a8253d439914 whi…
Browse files Browse the repository at this point in the history
…ch caused bug 3544 until we figure out what the right static analysis fix is.
  • Loading branch information
slouken committed Jan 6, 2017
1 parent 748f460 commit 3df77ce
Showing 1 changed file with 11 additions and 25 deletions.
36 changes: 11 additions & 25 deletions src/render/SDL_render.c
Expand Up @@ -1894,24 +1894,6 @@ SDL_RenderPresent(SDL_Renderer * renderer)
renderer->RenderPresent(renderer);
}

/* this isn't responsible for removing the deleted texture from the list!
(this is to keep static analysis happy in SDL_DestroyRenderer().) */
static void
SDL_DestroyTextureInternal(SDL_Texture * texture)
{
SDL_Renderer *renderer = texture->renderer;
if (texture->native) {
SDL_DestroyTexture(texture->native);
}
if (texture->yuv) {
SDL_SW_DestroyYUVTexture(texture->yuv);
}
SDL_free(texture->pixels);

renderer->DestroyTexture(renderer, texture);
SDL_free(texture);
}

void
SDL_DestroyTexture(SDL_Texture * texture)
{
Expand All @@ -1924,7 +1906,7 @@ SDL_DestroyTexture(SDL_Texture * texture)
SDL_SetRenderTarget(renderer, NULL);
}

texture->magic = NULL; /* just in case, but we're about to free this... */
texture->magic = NULL;

if (texture->next) {
texture->next->prev = texture->prev;
Expand All @@ -1935,22 +1917,26 @@ SDL_DestroyTexture(SDL_Texture * texture)
renderer->textures = texture->next;
}

SDL_DestroyTextureInternal(texture);
if (texture->native) {
SDL_DestroyTexture(texture->native);
}
if (texture->yuv) {
SDL_SW_DestroyYUVTexture(texture->yuv);
}
SDL_free(texture->pixels);

renderer->DestroyTexture(renderer, texture);
SDL_free(texture);
}

void
SDL_DestroyRenderer(SDL_Renderer * renderer)
{
SDL_Texture *texture = NULL;
SDL_Texture *nexttexture = NULL;

CHECK_RENDERER_MAGIC(renderer, );

SDL_DelEventWatch(SDL_RendererEventWatch, renderer);

/* Free existing textures for this renderer */
SDL_SetRenderTarget(renderer, NULL);

while (renderer->textures) {
SDL_DestroyTexture(renderer->textures);
}
Expand Down

0 comments on commit 3df77ce

Please sign in to comment.