> This PR limits the `tableIndex` value, used by the LZWDecoder algorithm in > `GIFImageLoader2`, to avoid a potential AIOOB exception that happens on some > animated GIFs, to the maximum size of the tables used (4096). > > In some occasions loading an animated GIF like the one used in the included > test, doesn't throw such exception, because we `allow partially loaded > animated images` in `ImageStorage`, but only a few frames are loaded. > > In theory, greater values of such index would operate over completely full > tables, so there is no need to add new values in this case, and therefore, > there is no risk in limiting the value to 4096. > > This PR will prevent the exception and all the frames should load. The > included test passes now (and fails loading only 10 frames out of 44 without > the proposed fix).
Jose Pereda has updated the pull request incrementally with one additional commit since the last revision: Modify test to avoid online resources ------------- Changes: - all: https://git.openjdk.java.net/jfx/pull/513/files - new: https://git.openjdk.java.net/jfx/pull/513/files/d6748b89..03897b70 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jfx&pr=513&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jfx&pr=513&range=00-01 Stats: 113 lines in 1 file changed: 108 ins; 1 del; 4 mod Patch: https://git.openjdk.java.net/jfx/pull/513.diff Fetch: git fetch https://git.openjdk.java.net/jfx pull/513/head:pull/513 PR: https://git.openjdk.java.net/jfx/pull/513