Mason Wheeler      2009-07-05 09:28:33 PDT

This patch fixes two issues with SDL_CreateTextureFromSurface.

1.  If no renderer is available, the function will return 0 without calling
SDL_SetError. (It does this in other places as well, but it appears that in
these cases, SDL_SetError was already called by a previous function call.)
2.  Removal of a dead code block that checks for an impossible return value.

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%403907
This commit is contained in:
Sam Lantinga 2009-09-26 10:13:44 +00:00
parent b42df3ec21
commit ba8fff9ab2

View file

@ -1596,6 +1596,7 @@ SDL_CreateTextureFromSurface(Uint32 format, SDL_Surface * surface)
renderer = SDL_CurrentDisplay.current_renderer;
if (!renderer) {
SDL_SetError("No current renderer available");
return 0;
}
@ -1815,10 +1816,7 @@ SDL_CreateTextureFromSurface(Uint32 format, SDL_Surface * surface)
if (bpp == fmt->BitsPerPixel && Rmask == fmt->Rmask && Gmask == fmt->Gmask
&& Bmask == fmt->Bmask && Amask == fmt->Amask) {
if (SDL_MUSTLOCK(surface)) {
if (SDL_LockSurface(surface) < 0) {
SDL_DestroyTexture(textureID);
return 0;
}
SDL_LockSurface(surface);
SDL_UpdateTexture(textureID, NULL, surface->pixels,
surface->pitch);
SDL_UnlockSurface(surface);