* de_DE.in: Adjust for correct handling of backward direction sorting.
authorUlrich Drepper <drepper@redhat.com>
Tue, 2 Oct 2007 17:17:59 +0000 (17:17 +0000)
committerUlrich Drepper <drepper@redhat.com>
Tue, 2 Oct 2007 17:17:59 +0000 (17:17 +0000)
localedata/ChangeLog
localedata/de_DE.in
string/strcoll_l.c

index 07d5185..376ad87 100644 (file)
@@ -1,3 +1,7 @@
+2007-10-02  Ulrich Drepper  <drepper@redhat.com>
+
+       * de_DE.in: Adjust for correct handling of backward direction sorting.
+
 2007-10-01  Ulrich Drepper  <drepper@redhat.com>
 
        [BZ #4941]
index c56f401..b3b0dac 100644 (file)
@@ -40,8 +40,8 @@ F
 Fussel                           : fluff
 fusseln                          : to wear of fluff
 füßeln                           : play footsie [under the table]
-fußen                            : to be based [on]
 Füssen                           : Füssen (town)
+fußen                            : to be based [on]
 Füßen (dat. pl. of "Fuß")        : [to the] feet
 in Massen                        : in large numbers
 in Maßen                         : moderately
@@ -49,9 +49,9 @@ Masern                           : measels
 Mass. (Massachusetts)            : Massachusetts (state)
 Maß                              : measure
 Masse                            : mass
-Massé                            : (particular billard stroke)
 Maße (pl. of "Maß")              : measures
 mäße (pres. conj. of "messen")   : take measure (e.g. in indirect speech)
+Massé                            : (particular billard stroke)
 Massen-                          : mass; wholesale; bulk (in compound nouns)
 massig                           : massive
 mäßig                            : moderate; modest
@@ -60,8 +60,8 @@ Mi
 Passe                            : yoke (of dress)
 passé                            : over, gone
 Schlagerforderung                : claim, demanded in a pop song
-Schlagerförderung                : promotion of pop music
 Schlägerforderung                : demand of a hooligan
+Schlagerförderung                : promotion of pop music
 Schlägerförderung                : promotion of hooliganism :-)
 Schurz                           : apron
 Schürze                          : apron
index c46921d..8bd84b1 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,96,97,2002, 2004 Free Software Foundation, Inc.
+/* Copyright (C) 1995,96,97,2002, 2004, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Written by Ulrich Drepper <drepper@gnu.org>, 1995.
 
@@ -128,7 +128,7 @@ STRCOLL (s1, s2, l)
 
      Please note that the localedef programs makes sure that `position'
      is not used at the first level.  */
-  if (! __libc_use_alloca (s1len + s2len))
+  if (! __libc_use_alloca ((s1len + s2len) * (sizeof (int32_t) + 1)))
     {
       idx1arr = (int32_t *) malloc ((s1len + s2len) * (sizeof (int32_t) + 1));
       idx2arr = &idx1arr[s1len];
@@ -186,7 +186,10 @@ STRCOLL (s1, s2, l)
                    /* The last pushed character was handled.  Continue
                       with forward characters.  */
                    if (idx1cnt < idx1max)
-                     idx1now = idx1cnt;
+                     {
+                       idx1now = idx1cnt;
+                       backw1_stop = ~0ul;
+                     }
                    else
                      /* Nothing anymore.  The backward sequence ended with
                         the last sequence in the string.  Note that seq1len
@@ -245,7 +248,10 @@ STRCOLL (s1, s2, l)
                    /* The last pushed character was handled.  Continue
                       with forward characters.  */
                    if (idx2cnt < idx2max)
-                     idx2now = idx2cnt;
+                     {
+                       idx2now = idx2cnt;
+                       backw2_stop = ~0ul;
+                     }
                    else
                      /* Nothing anymore.  The backward sequence ended with
                         the last sequence in the string.  Note that seq2len
@@ -370,7 +376,10 @@ STRCOLL (s1, s2, l)
                        /* The last pushed character was handled.  Continue
                           with forward characters.  */
                        if (idx1cnt < idx1max)
-                         idx1now = idx1cnt;
+                         {
+                           idx1now = idx1cnt;
+                           backw1_stop = ~0ul;
+                         }
                        else
                          {
                            /* Nothing anymore.  The backward sequence
@@ -426,7 +435,10 @@ STRCOLL (s1, s2, l)
                        /* The last pushed character was handled.  Continue
                           with forward characters.  */
                        if (idx2cnt < idx2max)
-                         idx2now = idx2cnt;
+                         {
+                           idx2now = idx2cnt;
+                           backw2_stop = ~0ul;
+                         }
                        else
                          {
                            /* Nothing anymore.  The backward sequence