[PATCH] OPENJDK6-39: Handle fonts with the non-canonical processing flag set

Andrew Hughes gnu.andrew at redhat.com
Tue Aug 12 15:46:45 UTC 2014



----- Original Message -----
> When changes were made to ICU in OpenJDK 6 & IcedTea 2.x for the July 2013
> security update, they had to be modified from the original Oracle patches
> as best as possible, so that the result would build. After the security
> patches were published in OpenJDK 7 by Oracle, they included an additional
> change "8008249: Sync ICU into JDK", which rebased the ICU used in OpenJDK 7
> and explains the issues we found in applying 8001031 and 8009530 without
> this change being in place first.
> 
> Although IcedTea 2.x received 8008249 from upstream OpenJDK 7, OpenJDK 6
> did not. This led to the recent discovery of a bug in OpenJDK 6's font
> processing, where it will throw an ArrayIndexOutOfBoundsException if
> certain combinations of glyphs are used in a font which is marked
> with the 'no canonical processing' feature flag. OpenJDK 6, at present,
> does not honour this flag and so still attempts to perform canonical
> processing with such fonts.
> 
> This webrev synchronises LETypes.h with the version in OpenJDK 7,
> so that all the feature flags are now defined, and brings across
> the check of LE_NoCanon_FEATURE_FLAG from OpenJDK 7 to LayoutEngine.cpp
> in OpenJDK 6. Some differences remain in the latter file, but these
> refer to entirely new files in the updated ICU. Rather than risk
> instability by bringing across the new version of ICU in its entirety,
> we bring across just the needed changes. Hence, why this bug is filed
> under an OpenJDK 6 identifier rather than claiming to be a backport of
> 8008249.
> 
> Most of the changes in LETypes.h are rearrangement; the code already exists
> in OpenJDK 6 but placement is slightly different due to how it was added
> on an as-needed basis to please 8001031 and 8009530.
> 
> With these changes, OpenJDK 6 behaves in the same way as OpenJDK 7, and
> doesn't throw an ArrayIndexOutOfBoundsException.
> 
> http://cr.openjdk.java.net/~andrew/openjdk6/oj6-39/webrev.01/
> 
> Ok to push?
> --
> Andrew :)
> 
> Free Java Software Engineer
> Red Hat, Inc. (http://www.redhat.com)
> 
> PGP Key: 248BDC07 (https://keys.indymedia.org/)
> Fingerprint = EC5A 1F5E C0AD 1D15 8F1F  8F91 3B96 A578 248B DC07
> 
> 

Ping.
-- 
Andrew :)

Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)

PGP Key: 248BDC07 (https://keys.indymedia.org/)
Fingerprint = EC5A 1F5E C0AD 1D15 8F1F  8F91 3B96 A578 248B DC07



More information about the jdk6-dev mailing list