clarify the return logic

Change-Id: I2b5b239496da6545df2deede6d0ca28a2f9d46bf
This commit is contained in:
Pascal Massimino 2011-03-14 10:29:02 -07:00
parent 5c69e1bb4d
commit 07dbb8d5af

View File

@ -509,6 +509,7 @@ static uint8_t* Decode(WEBP_CSP_MODE mode, const uint8_t* data,
WebPDecParams* params_out) {
int size = 0;
int uv_size = 0;
uint8_t* output;
WebPDecParams params = { 0 };
params.mode = mode;
@ -518,11 +519,14 @@ static uint8_t* Decode(WEBP_CSP_MODE mode, const uint8_t* data,
size = params.stride * (*height);
uv_size = params.u_stride * ((*height + 1) / 2);
if (!DecodeInto(mode, data, data_size, &params, size, uv_size, uv_size)) {
output = DecodeInto(mode, data, data_size, &params, size, uv_size, uv_size);
if (!output) {
WebPClearDecParams(&params);
}
if (params_out) *params_out = params;
return params.output;
if (params_out) {
*params_out = params;
}
return output;
}
uint8_t* WebPDecodeRGB(const uint8_t* data, uint32_t data_size,