X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fxvasprintf.c;h=702b5e6b1a7b1be3beb9589ffb6fd08a5288bea4;hb=4779b635ef35c7b0bc4044fcb5bc746d06f158c4;hp=26828a1a9e3d0ed441cd957ba65672b71940e24f;hpb=57fdfd3f8ec62b105c53bcdf6f127c35c7fe7391;p=gnulib.git diff --git a/lib/xvasprintf.c b/lib/xvasprintf.c index 26828a1a9..702b5e6b1 100644 --- a/lib/xvasprintf.c +++ b/lib/xvasprintf.c @@ -1,5 +1,5 @@ /* vasprintf and asprintf with out-of-memory checking. - Copyright (C) 1999, 2002-2004, 2006, 2007 Free Software Foundation, Inc. + Copyright (C) 1999, 2002-2004, 2006-2013 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -29,12 +29,7 @@ /* Checked size_t computations. */ #include "xsize.h" -/* Some systems, like OSF/1 4.0 and Woe32, don't have EOVERFLOW. */ -#ifndef EOVERFLOW -# define EOVERFLOW E2BIG -#endif - -static inline char * +static char * xstrcat (size_t argcount, va_list args) { char *result; @@ -91,23 +86,23 @@ xvasprintf (const char *format, va_list args) for (f = format;;) { - if (*f == '\0') - /* Recognized the special case of string concatenation. */ - return xstrcat (argcount, args); - if (*f != '%') - break; - f++; - if (*f != 's') - break; - f++; - argcount++; + if (*f == '\0') + /* Recognized the special case of string concatenation. */ + return xstrcat (argcount, args); + if (*f != '%') + break; + f++; + if (*f != 's') + break; + f++; + argcount++; } } if (vasprintf (&result, format, args) < 0) { if (errno == ENOMEM) - xalloc_die (); + xalloc_die (); return NULL; }