| Index: src/images/SkImageDecoder_libwebp.cpp
|
| diff --git a/src/images/SkImageDecoder_libwebp.cpp b/src/images/SkImageDecoder_libwebp.cpp
|
| index ab58aef135baa4ae6b4c0bae267e3b4fb7d42199..84c438affc6cda16852f9d13ebdb4f1f876a6a73 100644
|
| --- a/src/images/SkImageDecoder_libwebp.cpp
|
| +++ b/src/images/SkImageDecoder_libwebp.cpp
|
| @@ -80,13 +80,12 @@ static bool webp_parse_header(SkStream* stream, int* width, int* height, int* al
|
|
|
| // sanity check for image size that's about to be decoded.
|
| {
|
| - Sk64 size;
|
| - size.setMul(*width, *height);
|
| - if (size.isNeg() || !size.is32()) {
|
| + int64_t size = sk_64_mul(*width, *height);
|
| + if (!sk_64_isS32(size)) {
|
| return false;
|
| }
|
| // now check that if we are 4-bytes per pixel, we also don't overflow
|
| - if (size.get32() > (0x7FFFFFFF >> 2)) {
|
| + if (sk_64_asS32(size) > (0x7FFFFFFF >> 2)) {
|
| return false;
|
| }
|
| }
|
|
|