update from texinfo
[gnulib.git] / lib / unistr / u-cpy-alloc.h
index 7e18a18..07b74ff 100644 (file)
@@ -1,5 +1,6 @@
 /* Copy piece of UTF-8/UTF-16/UTF-32 string.
-   Copyright (C) 1999, 2002, 2006-2007 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2002, 2006-2007, 2009-2011 Free Software Foundation,
+   Inc.
    Written by Bruno Haible <bruno@clisp.org>, 2002.
 
    This program is free software: you can redistribute it and/or modify it
@@ -23,14 +24,14 @@ FUNC (const UNIT *s, size_t n)
 {
   UNIT *dest;
 
-  dest = (UNIT *) malloc (n * sizeof (UNIT));
+  dest = (UNIT *) malloc (n > 0 ? n * sizeof (UNIT) : 1);
   if (dest != NULL)
     {
 #if 0
       UNIT *destptr = dest;
 
       for (; n > 0; n--)
-       *destptr++ = *s++;
+        *destptr++ = *s++;
 #else
       memcpy ((char *) dest, (const char *) s, n * sizeof (UNIT));
 #endif