diff options
Diffstat (limited to 'string/strcoll.c')
-rw-r--r-- | string/strcoll.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/string/strcoll.c b/string/strcoll.c index f22bd101b2..0f3bd20a79 100644 --- a/string/strcoll.c +++ b/string/strcoll.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1995,96,97,98,99,2000,2001 Free Software Foundation, Inc. +/* Copyright (C) 1995,96,97,98,99,2000,2001,2002 Free Software Foundation, Inc. This file is part of the GNU C Library. Written by Ulrich Drepper <drepper@cygnus.com>, 1995. @@ -137,6 +137,10 @@ STRCOLL (s1, s2, l) s1len = STRLEN (s1); s2len = STRLEN (s2); + /* Catch empty strings. */ + if (__builtin_expect (s1len == 0, 0) || __builtin_expect (s2len == 0, 0)) + return (s1len != 0) - (s2len != 0); + /* We need the elements of the strings as unsigned values since they are used as indeces. */ us1 = (const USTRING_TYPE *) s1; |