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 458f6d50de
commit f5dc9cbdd4

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;
}