> If there are two consecutive frames that use DISPOSAL_SAVE, but the 
> transparent pixel index changed: we might accidentally send the wrong data to 
> the ImageConsumer.
> 
> We already had logic that submits info "the hard way" (see comment in code); 
> this PR just makes sure we trigger that block.
> 
> I wrote four PRs that share the GifComparison class in this PR. Once any of 
> them clear code review the other PRs will be much simpler:
> 
> 1. [8357034](https://github.com/openjdk/jdk/pull/25264) (this one)
> 2. [8356137](https://github.com/openjdk/jdk/pull/25044)
> 3. [8356320](https://github.com/openjdk/jdk/pull/25076)
> 4. [8351913](https://github.com/openjdk/jdk/pull/24271)
> 
> This bug can be observed reading these gif animations:
> 
> https://giphy.com/gifs/fomoduck-duck-fomo-ZUlzR40oGACqNmy0q8
> https://media4.giphy.com/media/Zbf4JQzcDhzeraQvk9/giphy.gif
> https://giphy.com/gifs/computer-working-cat-LHZyixOnHwDDy
> https://giphy.com/gifs/90s-fgfgif-r4BmI9xUaDuKJQdd3l

Jeremy Wood has updated the pull request with a new target base due to a merge 
or a rebase. The incremental webrev excludes the unrelated changes brought in 
by the merge/rebase. The pull request contains 29 additional commits since the 
last revision:

 - 8357034: avoid recalculating isSimpleSavedImageComparison for every line
   
   This is in response to:
   https://github.com/openjdk/jdk/pull/25264#discussion_r2197097522
 - Merge branch 'master' into JDK-8357034
 - 8356320: Use new GifBuilder and remove ukraine-flag.gif
   
   This is an extension of work for this PR:
   https://github.com/openjdk/jdk/pull/25044#pullrequestreview-2871107750
 - 8356137: adding copyright
 - 8356137: Adding GifBuilder to dynamically create test file
   
   This can be used by multiple gif tests in this directory.
   
   This is in response to:
   https://github.com/openjdk/jdk/pull/25044#pullrequestreview-2871107750
 - 8356137: trivial javadoc update
 - 8356137: only inspect last frame of gif
   
   This makes the main() method much less useful, so I removed it too. (I 
originally used this class to explore a folder of hundreds of gifs to look for 
discrepancies. But the discrepancies were rarely only on the last frame.)
   
   This is in response to:
   https://github.com/openjdk/jdk/pull/25044#discussion_r2109298270
 - 8356137: Adding copyright to GifComparison
 - 8357034: fixing classname
 - 8356320: trivial whitespace and comment changes
 - ... and 19 more: https://git.openjdk.org/jdk/compare/8e1cfed5...b8a8bf7d

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/25264/files
  - new: https://git.openjdk.org/jdk/pull/25264/files/3750e58e..b8a8bf7d

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=25264&range=04
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=25264&range=03-04

  Stats: 135354 lines in 2649 files changed: 81027 ins; 33376 del; 20951 mod
  Patch: https://git.openjdk.org/jdk/pull/25264.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/25264/head:pull/25264

PR: https://git.openjdk.org/jdk/pull/25264

Reply via email to