X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fstrverscmp.c;h=f917f304cd268e428595d5250e827fa337954345;hb=5191b3546cfb6c163228c23f214e325ddf60d46f;hp=6353609730e4ea26f87293362c25b9291db3170d;hpb=4d7bf7ecdc3d9f4fc8e2b91aa9bde0741acb5435;p=gnulib.git diff --git a/lib/strverscmp.c b/lib/strverscmp.c index 635360973..f917f304c 100644 --- a/lib/strverscmp.c +++ b/lib/strverscmp.c @@ -1,5 +1,6 @@ /* Compare strings while treating digits characters numerically. - Copyright (C) 1997, 2000, 2002, 2004 Free Software Foundation, Inc. + Copyright (C) 1997, 2000, 2002, 2004, 2006, 2009-2013 Free Software + Foundation, Inc. This file is part of the GNU C Library. Contributed by Jean-François Bignolles , 1997. @@ -14,10 +15,9 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + with this program; if not, see . */ -#if HAVE_CONFIG_H +#if !_LIBC # include #endif @@ -37,12 +37,12 @@ /* ISDIGIT differs from isdigit, as follows: - - Its arg may be any int or unsigned int; it need not be an unsigned char. - - It's guaranteed to evaluate its argument exactly once. + - Its arg may be any int or unsigned int; it need not be an unsigned char + or EOF. - It's typically faster. POSIX says that only '0' through '9' are digits. Prefer ISDIGIT to - ISDIGIT_LOCALE unless it's important to use the locale's definition - of `digit' even when the host does not conform to POSIX. */ + isdigit unless it's important to use the locale's definition + of "digit" even when the host does not conform to POSIX. */ #define ISDIGIT(c) ((unsigned int) (c) - '0' <= 9) #undef __strverscmp @@ -117,8 +117,8 @@ __strverscmp (const char *s1, const char *s2) case LEN: while (ISDIGIT (*p1++)) - if (!ISDIGIT (*p2++)) - return 1; + if (!ISDIGIT (*p2++)) + return 1; return ISDIGIT (*p2) ? -1 : diff;