| Index: third_party/WebKit/Source/core/fetch/ImageResource.cpp
|
| diff --git a/third_party/WebKit/Source/core/fetch/ImageResource.cpp b/third_party/WebKit/Source/core/fetch/ImageResource.cpp
|
| index caaac704bf2695a5c38c3c53dec4c1098c0ea789..470931fcf532bca1b5dfb72dd41098d5e6ea44f0 100644
|
| --- a/third_party/WebKit/Source/core/fetch/ImageResource.cpp
|
| +++ b/third_party/WebKit/Source/core/fetch/ImageResource.cpp
|
| @@ -381,9 +381,9 @@ void ImageResource::decodedSizeChanged(const blink::Image* image, int delta)
|
| if (!image || image != m_image)
|
| return;
|
|
|
| - // TODO(bsep): Crash on underflow, which is possible if an error causes
|
| - // decodedSize to be 0.
|
| - setDecodedSize(decodedSize() + delta);
|
| + WTF::CheckedNumeric<size_t> checkedDecodedSize(decodedSize());
|
| + checkedDecodedSize += delta;
|
| + setDecodedSize(checkedDecodedSize.ValueOrDie());
|
| }
|
|
|
| void ImageResource::didDraw(const blink::Image* image)
|
|
|