install-reloc: Support multi-binary installation.
[gnulib.git] / lib / stpncpy.c
index 9c0b167..8b14fb9 100644 (file)
@@ -1,11 +1,12 @@
-/* Copyright (C) 1993, 1995-1997, 2002-2003, 2005-2006 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995-1997, 2002-2003, 2005-2007, 2009-2013 Free Software
+ * Foundation, Inc.
 
    NOTE: The canonical source of this file is maintained with the GNU C Library.
    Bugs can be reported to bug-glibc@gnu.org.
 
 
    NOTE: The canonical source of this file is maintained with the GNU C Library.
    Bugs can be reported to bug-glibc@gnu.org.
 
-   This program is free software; you can redistribute it and/or modify it
+   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 the
    under the terms of the GNU General Public License as published by the
-   Free Software Foundation; either version 2, or (at your option) any
+   Free Software Foundation; either version 3 of the License, or any
    later version.
 
    This program is distributed in the hope that it will be useful,
    later version.
 
    This program is distributed in the hope that it will be useful,
    GNU General Public License for more details.
 
    You should have received a copy of the GNU General Public License
    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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
 /* This is almost copied from strncpy.c, written by Torbjorn Granlund.  */
 
 #include <config.h>
 
 /* Specification.  */
 
 /* This is almost copied from strncpy.c, written by Torbjorn Granlund.  */
 
 #include <config.h>
 
 /* Specification.  */
-#include "stpncpy.h"
+#include <string.h>
 
 #ifndef weak_alias
 # define __stpncpy stpncpy
 
 #ifndef weak_alias
 # define __stpncpy stpncpy
@@ -31,7 +31,7 @@
 /* Copy no more than N bytes of SRC to DST, returning a pointer past the
    last non-NUL byte written into DST.  */
 char *
 /* Copy no more than N bytes of SRC to DST, returning a pointer past the
    last non-NUL byte written into DST.  */
 char *
-__stpncpy (char *dest, const char *src, size_t n)
+(__stpncpy) (char *dest, const char *src, size_t n)
 {
   char c;
   char *s = dest;
 {
   char c;
   char *s = dest;
@@ -41,26 +41,26 @@ __stpncpy (char *dest, const char *src, size_t n)
       size_t n4 = n >> 2;
 
       for (;;)
       size_t n4 = n >> 2;
 
       for (;;)
-       {
-         c = *src++;
-         *dest++ = c;
-         if (c == '\0')
-           break;
-         c = *src++;
-         *dest++ = c;
-         if (c == '\0')
-           break;
-         c = *src++;
-         *dest++ = c;
-         if (c == '\0')
-           break;
-         c = *src++;
-         *dest++ = c;
-         if (c == '\0')
-           break;
-         if (--n4 == 0)
-           goto last_chars;
-       }
+        {
+          c = *src++;
+          *dest++ = c;
+          if (c == '\0')
+            break;
+          c = *src++;
+          *dest++ = c;
+          if (c == '\0')
+            break;
+          c = *src++;
+          *dest++ = c;
+          if (c == '\0')
+            break;
+          c = *src++;
+          *dest++ = c;
+          if (c == '\0')
+            break;
+          if (--n4 == 0)
+            goto last_chars;
+        }
       n -= dest - s;
       goto zero_fill;
     }
       n -= dest - s;
       goto zero_fill;
     }
@@ -76,9 +76,9 @@ __stpncpy (char *dest, const char *src, size_t n)
       --n;
       *dest++ = c;
       if (c == '\0')
       --n;
       *dest++ = c;
       if (c == '\0')
-       break;
+        break;
       if (n == 0)
       if (n == 0)
-       return dest;
+        return dest;
     }
 
  zero_fill:
     }
 
  zero_fill: