On Thu, 10 Jul 2025 21:20:07 GMT, Jeremy Wood <d...@openjdk.org> wrote:

>> 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.
>> 
>> There are a cluster of four related PRs that share the GifComparison class 
>> in this PR.
>> 
>> 1. [8357034](https://github.com/openjdk/jdk/pull/25264) (this one)
>> 2. ~~[8356137](https://github.com/openjdk/jdk/pull/25044)~~ (integrated)
>> 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 pull request now contains 29 commits:
> 
>  - 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/a41d3507...b8a8bf7d

This is merged with master, and I added an optional (commented out) argument to 
dump all the gif frames in a folder.

Also (as before) I tested this change with the known buggy gifs I collected, 
and this PR renders those correctly.

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

PR Comment: https://git.openjdk.org/jdk/pull/25264#issuecomment-3063394391

Reply via email to