(memcoll): Set errno = 0 in the shortcut case, too.
authorPaul Eggert <eggert@cs.ucla.edu>
Wed, 16 Aug 2006 17:22:49 +0000 (17:22 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Wed, 16 Aug 2006 17:22:49 +0000 (17:22 +0000)
lib/ChangeLog
lib/memcoll.c

index 0dcf3d2..d90fa93 100644 (file)
@@ -1,3 +1,9 @@
+2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
+       Problem and fix reported by Pádraig Brady in
+       <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
+
 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
 
        * memcoll.c (memcoll): Optimize for the common case where the
index 7f61a6b..457d110 100644 (file)
@@ -43,7 +43,10 @@ memcoll (char *s1, size_t s1len, char *s2, size_t s2len)
      the buffers using strcoll on each substring.  */
 
   if (s1len == s2len && memcmp (s1, s2, s1len) == 0)
-    diff = 0;
+    {
+      errno = 0;
+      diff = 0;
+    }
   else
     {
       char n1 = s1[s1len];