From 07dbb8d5af8e555057f43d6982062c4b3f8b8873 Mon Sep 17 00:00:00 2001 From: Pascal Massimino Date: Mon, 14 Mar 2011 10:29:02 -0700 Subject: [PATCH] clarify the return logic Change-Id: I2b5b239496da6545df2deede6d0ca28a2f9d46bf --- src/dec/webp.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/dec/webp.c b/src/dec/webp.c index 823eafe6..7eee0144 100644 --- a/src/dec/webp.c +++ b/src/dec/webp.c @@ -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, ¶ms, size, uv_size, uv_size)) { + output = DecodeInto(mode, data, data_size, ¶ms, size, uv_size, uv_size); + if (!output) { WebPClearDecParams(¶ms); } - 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,