Mercurial > hg > release > icedtea6-1.10
changeset 2564:4515e31b48fa
Backport of: 6792400: Avoid loading of Normalizer resources for simple uses
author | ptisnovs |
---|---|
date | Wed, 18 Apr 2012 18:41:40 +0200 |
parents | 182bdaba43ea |
children | 8bcd76a839dd |
files | ChangeLog Makefile.am NEWS patches/openjdk/6792400-Avoid_loading_Normalizer_resources.patch |
diffstat | 4 files changed, 62 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Tue Apr 17 18:57:20 2012 +0200 +++ b/ChangeLog Wed Apr 18 18:41:40 2012 +0200 @@ -1,3 +1,11 @@ +2012-04-18 Pavel Tisnovsky <ptisnovs@redhat.com> + + * patches/openjdk/6792400-Avoid_loading_Normalizer_resources.patch: + Backport of: 6792400: Avoid loading of Normalizer resources + for simple uses + * NEWS: Mention backport. + * Makefile.am: Updated + 2012-04-17 Pavel Tisnovsky <ptisnovs@redhat.com> PR881: Sign tests (wsse.policy.basic) failures with OpenJDK6
--- a/Makefile.am Tue Apr 17 18:57:20 2012 +0200 +++ b/Makefile.am Wed Apr 18 18:41:40 2012 +0200 @@ -380,7 +380,8 @@ patches/openjdk/7103725-ssl_beast_regression.patch \ patches/openjdk/6851973-kerberos.patch \ patches/openjdk/7091528-javadoc_class_files.patch \ - patches/idresolver_fix.patch + patches/idresolver_fix.patch \ + patches/openjdk/6792400-Avoid_loading_Normalizer_resources.patch if WITH_ALT_HSBUILD ICEDTEA_PATCHES += \
--- a/NEWS Tue Apr 17 18:57:20 2012 +0200 +++ b/NEWS Wed Apr 18 18:41:40 2012 +0200 @@ -13,6 +13,8 @@ * Bug fixes - PR732: Use xsltproc for bootstrap xslt in place of Xerces/Xalan - PR881: Sign tests (wsse.policy.basic) failures with OpenJDK6 +* Backports + - S6792400: Avoid loading of Normalizer resources for simple uses New in release 1.10.6 (2012-02-14):
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6792400-Avoid_loading_Normalizer_resources.patch Wed Apr 18 18:41:40 2012 +0200 @@ -0,0 +1,50 @@ +# HG changeset patch +# User peytoia +# Date 1245934539 -32400 +# Node ID e0707baa159364ff923bf901eab1b6c83d4cf092 +# Parent 4d54d6e7bcefd16bcc9a26b93937359f031389ca +6792400: Avoid loading of Normalizer resources for simple uses +Reviewed-by: okutsu + +diff -r 4d54d6e7bcef -r e0707baa1593 src/share/classes/sun/text/normalizer/NormalizerBase.java +--- openjdk/jdk/src/share/classes/sun/text/normalizer/NormalizerBase.java Thu Jun 25 02:42:26 2009 -0700 ++++ openjdk/jdk/src/share/classes/sun/text/normalizer/NormalizerBase.java Thu Jun 25 21:55:39 2009 +0900 +@@ -1598,15 +1598,34 @@ + * @param options the optional features to be enabled. + */ + public static String normalize(String str, Normalizer.Form form, int options) { ++ int len = str.length(); ++ boolean asciiOnly = true; ++ if (len < 80) { ++ for (int i = 0; i < len; i++) { ++ if (str.charAt(i) > 127) { ++ asciiOnly = false; ++ break; ++ } ++ } ++ } else { ++ char[] a = str.toCharArray(); ++ for (int i = 0; i < len; i++) { ++ if (a[i] > 127) { ++ asciiOnly = false; ++ break; ++ } ++ } ++ } ++ + switch (form) { + case NFC : +- return NFC.normalize(str, options); ++ return asciiOnly ? str : NFC.normalize(str, options); + case NFD : +- return NFD.normalize(str, options); ++ return asciiOnly ? str : NFD.normalize(str, options); + case NFKC : +- return NFKC.normalize(str, options); ++ return asciiOnly ? str : NFKC.normalize(str, options); + case NFKD : +- return NFKD.normalize(str, options); ++ return asciiOnly ? str : NFKD.normalize(str, options); + } + + throw new IllegalArgumentException("Unexpected normalization form: " +