Merge "WebPMuxGetImage: allow image param to be NULL"

This commit is contained in:
pascal massimino 2012-02-22 21:58:48 -08:00 committed by Gerrit Code Review
commit cb5810dfbe
2 changed files with 10 additions and 7 deletions

View File

@ -230,8 +230,8 @@ WebPMuxError WebPMuxGetImage(const WebPMux* const mux,
WebPMuxError err; WebPMuxError err;
WebPMuxImage* wpi = NULL; WebPMuxImage* wpi = NULL;
if (mux == NULL || image == NULL) return WEBP_MUX_INVALID_ARGUMENT; if (mux == NULL || (image == NULL && alpha == NULL))
memset(image, 0, sizeof(*image)); return WEBP_MUX_INVALID_ARGUMENT;
err = ValidateForImage(mux); err = ValidateForImage(mux);
if (err != WEBP_MUX_OK) return err; if (err != WEBP_MUX_OK) return err;
@ -250,9 +250,12 @@ WebPMuxError WebPMuxGetImage(const WebPMux* const mux,
} }
// Get image chunk. // Get image chunk.
if (wpi->vp8_ != NULL) { if (image != NULL) {
image->bytes_ = wpi->vp8_->data_; memset(image, 0, sizeof(*image));
image->size_ = wpi->vp8_->payload_size_; if (wpi->vp8_ != NULL) {
image->bytes_ = wpi->vp8_->data_;
image->size_ = wpi->vp8_->payload_size_;
}
} }
return WEBP_MUX_OK; return WEBP_MUX_OK;
} }

View File

@ -149,8 +149,8 @@ WEBP_EXTERN(WebPMuxError) WebPMuxSetImage(
// image - (out) the image data // image - (out) the image data
// alpha - (out) the alpha data of the image (if present) // alpha - (out) the alpha data of the image (if present)
// Returns: // Returns:
// WEBP_MUX_INVALID_ARGUMENT - if either mux or image is NULL // WEBP_MUX_INVALID_ARGUMENT - if either mux or both image & alpha are NULL
// OR if mux contains animation/tiling. // OR mux contains animation/tiling.
// WEBP_MUX_NOT_FOUND - if image is not present in mux object. // WEBP_MUX_NOT_FOUND - if image is not present in mux object.
// WEBP_MUX_OK - on success. // WEBP_MUX_OK - on success.
WEBP_EXTERN(WebPMuxError) WebPMuxGetImage(const WebPMux* const mux, WEBP_EXTERN(WebPMuxError) WebPMuxGetImage(const WebPMux* const mux,