Don't allocate memory if we're just going to fail when checking parameters.

This commit is contained in:
Ryan C. Gordon 2013-07-20 21:19:20 -04:00
parent 51ba788d0d
commit 20b4bd0c6a

View file

@ -1029,12 +1029,6 @@ SDL_SW_CreateYUVTexture(Uint32 format, int w, int h)
int i;
int CR, CB;
swdata = (SDL_SW_YUVTexture *) SDL_calloc(1, sizeof(*swdata));
if (!swdata) {
SDL_OutOfMemory();
return NULL;
}
switch (format) {
case SDL_PIXELFORMAT_YV12:
case SDL_PIXELFORMAT_IYUV:
@ -1043,11 +1037,16 @@ SDL_SW_CreateYUVTexture(Uint32 format, int w, int h)
case SDL_PIXELFORMAT_YVYU:
break;
default:
SDL_SW_DestroyYUVTexture(swdata);
SDL_SetError("Unsupported YUV format");
return NULL;
}
swdata = (SDL_SW_YUVTexture *) SDL_calloc(1, sizeof(*swdata));
if (!swdata) {
SDL_OutOfMemory();
return NULL;
}
swdata->format = format;
swdata->target_format = SDL_PIXELFORMAT_UNKNOWN;
swdata->w = w;
@ -1095,7 +1094,7 @@ SDL_SW_CreateYUVTexture(Uint32 format, int w, int h)
swdata->planes[0] = swdata->pixels;
break;
default:
/* We should never get here (caught above) */
SDL_assert(0 && "We should never get here (caught above)");
break;
}