From 6e8075fa4cf5af5e8a684d35b5d6d7f2804ac57a Mon Sep 17 00:00:00 2001 From: Ram Viswanadha Date: Wed, 24 Jul 2002 01:04:10 +0000 Subject: [PATCH] ICU-2016 mergeOrdered bug fixed X-SVN-Rev: 9301 --- .../src/com/ibm/icu/impl/NormalizerImpl.java | 29 ++++++++++--------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/icu4j/src/com/ibm/icu/impl/NormalizerImpl.java b/icu4j/src/com/ibm/icu/impl/NormalizerImpl.java index 714e669916d..8700984ab9d 100644 --- a/icu4j/src/com/ibm/icu/impl/NormalizerImpl.java +++ b/icu4j/src/com/ibm/icu/impl/NormalizerImpl.java @@ -5,8 +5,8 @@ ******************************************************************************* * * $Source: /xsrl/Nsvn/icu/icu4j/src/com/ibm/icu/impl/NormalizerImpl.java,v $ - * $Date: 2002/07/16 00:18:33 $ - * $Revision: 1.6 $ + * $Date: 2002/07/24 01:04:10 $ + * $Revision: 1.7 $ ******************************************************************************* */ @@ -392,6 +392,7 @@ public final class NormalizerImpl { private static long getNorm32(int c){ return (UNSIGNED_INT_MASK&(normTrieImpl.normTrie.getCodePointValue(c))); } + private static long getNorm32(int c,int mask){ long/*unsigned*/ norm32= getNorm32(UTF16.getLeadSurrogate(c)); if(((norm32&mask)>0) && isNorm32LeadSurrogate(norm32)) { @@ -400,7 +401,8 @@ public final class NormalizerImpl { } return norm32; } - /* + + /* * get a norm32 from text with complete code points * (like from decompositions) */ @@ -761,12 +763,13 @@ public final class NormalizerImpl { boolean adjacent; adjacent= current==next; - + NextCCArgs ncArgs = new NextCCArgs(); + ncArgs.source = data; + ncArgs.next = next; + ncArgs.limit = limit; + if(start!=current || !isOrdered) { - NextCCArgs ncArgs = new NextCCArgs(); - ncArgs.source = data; - ncArgs.next = next; - ncArgs.limit = limit; + while(ncArgs.next