(quotearg_buffer):
[gnulib.git] / lib / realloc.c
index 1f82e75..d0d3e4a 100644 (file)
@@ -1,4 +1,4 @@
-/* Work around bug on some systems where realloc (NULL, n) fails.
+/* Work around bug on some systems where realloc (NULL, 0) fails.
    Copyright (C) 1997 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
@@ -28,13 +28,16 @@ char *malloc ();
 char *realloc ();
 
 /* Change the size of an allocated block of memory P to N bytes,
-   with error checking.  If P is NULL, use malloc.  */
+   with error checking.  If N is zero, change it to 1.  If P is NULL,
+   use malloc.  */
 
 char *
 rpl_realloc (p, n)
      char *p;
      size_t n;
 {
+  if (n == 0)
+    n = 1;
   if (p == 0)
     return malloc (n);
   return realloc (p, n);