RFR: 8357034: GifImageDecoder can produce wrong transparent pixels [v2]

Jeremy Wood duke at openjdk.org
Mon May 26 05:23:36 UTC 2025


> 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)

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 21 additional commits since the last revision:

 - 8357034: fixing classname
 - 8356320: trivial whitespace and comment changes
 - Merge branch 'master' into JDK-8357034
 - Merge branch 'master' of https://github.com/mickleness/jdk
 - 8357034: fixing ticket number
 - GifComparison: fixing error message
 - Incident 9078482: fix when new trans index is in saved images
   
   This bug hasn't made it out of triage yet; it's incident report # is 9078482
 - GifComparison: code cleanup
 - GifComparison: adding common helper class for gif bugs
 - Merge branch 'master' of https://github.com/mickleness/jdk
 - ... and 11 more: https://git.openjdk.org/jdk/compare/adb906b3...b1a1d7ec

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/25264/files
  - new: https://git.openjdk.org/jdk/pull/25264/files/5b982b12..b1a1d7ec

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

  Stats: 63230 lines in 984 files changed: 37170 ins; 21012 del; 5048 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


More information about the client-libs-dev mailing list