mirror of
https://github.com/webmproject/libwebp.git
synced 2025-03-03 16:22:51 +01:00
WebPPictureImport*: check src pointer
fixes crash with NULL source pointer in calls to simple encode api (WebPEncodeRGB, etc.) Change-Id: I706d670c80298da5176aaa5ba0eb2238dd71a8f0
This commit is contained in:
parent
64eed38779
commit
41f14bcbc5
@ -1125,32 +1125,44 @@ static int Import(WebPPicture* const picture,
|
|||||||
|
|
||||||
int WebPPictureImportRGB(WebPPicture* picture,
|
int WebPPictureImportRGB(WebPPicture* picture,
|
||||||
const uint8_t* rgb, int rgb_stride) {
|
const uint8_t* rgb, int rgb_stride) {
|
||||||
return (picture != NULL) ? Import(picture, rgb, rgb_stride, 3, 0, 0) : 0;
|
return (picture != NULL && rgb != NULL)
|
||||||
|
? Import(picture, rgb, rgb_stride, 3, 0, 0)
|
||||||
|
: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int WebPPictureImportBGR(WebPPicture* picture,
|
int WebPPictureImportBGR(WebPPicture* picture,
|
||||||
const uint8_t* rgb, int rgb_stride) {
|
const uint8_t* rgb, int rgb_stride) {
|
||||||
return (picture != NULL) ? Import(picture, rgb, rgb_stride, 3, 1, 0) : 0;
|
return (picture != NULL && rgb != NULL)
|
||||||
|
? Import(picture, rgb, rgb_stride, 3, 1, 0)
|
||||||
|
: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int WebPPictureImportRGBA(WebPPicture* picture,
|
int WebPPictureImportRGBA(WebPPicture* picture,
|
||||||
const uint8_t* rgba, int rgba_stride) {
|
const uint8_t* rgba, int rgba_stride) {
|
||||||
return (picture != NULL) ? Import(picture, rgba, rgba_stride, 4, 0, 1) : 0;
|
return (picture != NULL && rgba != NULL)
|
||||||
|
? Import(picture, rgba, rgba_stride, 4, 0, 1)
|
||||||
|
: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int WebPPictureImportBGRA(WebPPicture* picture,
|
int WebPPictureImportBGRA(WebPPicture* picture,
|
||||||
const uint8_t* rgba, int rgba_stride) {
|
const uint8_t* rgba, int rgba_stride) {
|
||||||
return (picture != NULL) ? Import(picture, rgba, rgba_stride, 4, 1, 1) : 0;
|
return (picture != NULL && rgba != NULL)
|
||||||
|
? Import(picture, rgba, rgba_stride, 4, 1, 1)
|
||||||
|
: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int WebPPictureImportRGBX(WebPPicture* picture,
|
int WebPPictureImportRGBX(WebPPicture* picture,
|
||||||
const uint8_t* rgba, int rgba_stride) {
|
const uint8_t* rgba, int rgba_stride) {
|
||||||
return (picture != NULL) ? Import(picture, rgba, rgba_stride, 4, 0, 0) : 0;
|
return (picture != NULL && rgba != NULL)
|
||||||
|
? Import(picture, rgba, rgba_stride, 4, 0, 0)
|
||||||
|
: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int WebPPictureImportBGRX(WebPPicture* picture,
|
int WebPPictureImportBGRX(WebPPicture* picture,
|
||||||
const uint8_t* rgba, int rgba_stride) {
|
const uint8_t* rgba, int rgba_stride) {
|
||||||
return (picture != NULL) ? Import(picture, rgba, rgba_stride, 4, 1, 0) : 0;
|
return (picture != NULL && rgba != NULL)
|
||||||
|
? Import(picture, rgba, rgba_stride, 4, 1, 0)
|
||||||
|
: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
Loading…
x
Reference in New Issue
Block a user