Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(390)

Issue 813943003: Fix handling of broken GIFs with weird frame sizes (Closed)

Created:
5 years, 11 months ago by Alpha Left Google
Modified:
5 years, 11 months ago
CC:
blink-reviews
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Fix handling of broken GIFs with weird frame sizes Code didn't handle well if a GIF frame has dimension greater than the "screen" dimension. This will break deferred image decoding. This change reports the size as final only when the first frame is encountered. Added a test to verify this behavior. Frame size reported by the decoder should be constant. BUG=437651 R=pkasting@chromium.org, senorblanco@chromium.org Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=188423

Patch Set 1 #

Patch Set 2 : don't report error if subsequent frame has larger size #

Patch Set 3 : nits #

Total comments: 18

Patch Set 4 : comments #

Total comments: 6

Patch Set 5 : comments #

Patch Set 6 : comments #

Total comments: 1

Patch Set 7 : commens #

Total comments: 2

Patch Set 8 : comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+93 lines, -58 lines) Patch
M Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp View 1 2 3 4 5 6 7 19 chunks +58 lines, -27 lines 0 comments Download
M Source/platform/image-decoders/gif/GIFImageReader.h View 1 2 3 2 chunks +2 lines, -0 lines 0 comments Download
M Source/platform/image-decoders/gif/GIFImageReader.cpp View 1 2 3 4 5 6 3 chunks +33 lines, -31 lines 0 comments Download
A + Source/platform/image-decoders/testing/first-frame-has-greater-size-than-screen-size.gif View Binary file 0 comments Download

Messages

Total messages: 19 (4 generated)
Alpha Left Google
5 years, 11 months ago (2015-01-08 02:28:36 UTC) #2
Peter Kasting
https://codereview.chromium.org/813943003/diff/40001/Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp File Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp (right): https://codereview.chromium.org/813943003/diff/40001/Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp#newcode507 Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp:507: const size_t fullLength = fullData->size(); Nit: I'd probably omit ...
5 years, 11 months ago (2015-01-08 06:56:19 UTC) #3
Alpha Left Google
https://codereview.chromium.org/813943003/diff/40001/Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp File Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp (right): https://codereview.chromium.org/813943003/diff/40001/Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp#newcode507 Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp:507: const size_t fullLength = fullData->size(); On 2015/01/08 06:56:18, Peter ...
5 years, 11 months ago (2015-01-12 22:12:49 UTC) #4
Peter Kasting
So why do we only enlarge the image on the first frame, but not if ...
5 years, 11 months ago (2015-01-12 22:40:45 UTC) #5
Alpha Left Google
> So why do we only enlarge the image on the first frame, but not ...
5 years, 11 months ago (2015-01-12 22:48:22 UTC) #6
Peter Kasting
On 2015/01/12 22:48:22, Alpha wrote: > > So why do we only enlarge the image ...
5 years, 11 months ago (2015-01-12 22:56:00 UTC) #7
Alpha Left Google
On 2015/01/12 22:56:00, Peter Kasting wrote: > On 2015/01/12 22:48:22, Alpha wrote: > > > ...
5 years, 11 months ago (2015-01-12 23:20:03 UTC) #8
Peter Kasting
LGTM https://codereview.chromium.org/813943003/diff/100001/Source/platform/image-decoders/gif/GIFImageReader.cpp File Source/platform/image-decoders/gif/GIFImageReader.cpp (right): https://codereview.chromium.org/813943003/diff/100001/Source/platform/image-decoders/gif/GIFImageReader.cpp#newcode440 Source/platform/image-decoders/gif/GIFImageReader.cpp:440: // Note that we don't inform the client ...
5 years, 11 months ago (2015-01-13 01:47:33 UTC) #9
Alpha Left Google
On 2015/01/13 01:47:33, Peter Kasting wrote: > LGTM > > https://codereview.chromium.org/813943003/diff/100001/Source/platform/image-decoders/gif/GIFImageReader.cpp > File Source/platform/image-decoders/gif/GIFImageReader.cpp (right): ...
5 years, 11 months ago (2015-01-14 21:53:14 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/813943003/120001
5 years, 11 months ago (2015-01-14 21:53:20 UTC) #12
commit-bot: I haz the power
Try jobs failed on following builders: blink_presubmit on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/blink_presubmit/builds/24215)
5 years, 11 months ago (2015-01-14 21:59:22 UTC) #14
Alpha Left Google
+senorblanco for owner approval.
5 years, 11 months ago (2015-01-14 22:03:17 UTC) #16
Stephen White
LGTM https://codereview.chromium.org/813943003/diff/120001/Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp File Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp (right): https://codereview.chromium.org/813943003/diff/120001/Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp#newcode505 Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp:505: RefPtr<SharedBuffer> fullData = readFile("/Source/platform/image-decoders/testing/first-frame-has-greater-size-than-screen-size.gif"); Not new to this ...
5 years, 11 months ago (2015-01-14 22:17:02 UTC) #17
Alpha Left Google
https://codereview.chromium.org/813943003/diff/120001/Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp File Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp (right): https://codereview.chromium.org/813943003/diff/120001/Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp#newcode505 Source/platform/image-decoders/gif/GIFImageDecoderTest.cpp:505: RefPtr<SharedBuffer> fullData = readFile("/Source/platform/image-decoders/testing/first-frame-has-greater-size-than-screen-size.gif"); On 2015/01/14 22:17:02, Stephen White ...
5 years, 11 months ago (2015-01-14 23:14:59 UTC) #18
Alpha Left Google
5 years, 11 months ago (2015-01-14 23:28:20 UTC) #19
Message was sent while issue was closed.
Committed patchset #8 (id:140001) manually as 188423 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698