]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
* string/stpcpy.c (__stpcpy): Rewrite using strlen and memcpy.
authorRichard Earnshaw <rearnsha@arm.com>
Tue, 23 Dec 2014 16:57:07 +0000 (08:57 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Tue, 23 Dec 2014 16:58:18 +0000 (08:58 -0800)
ChangeLog
string/stpcpy.c

index 2b6f0adbb2ca4da0b0989175c415312c546c51b1..9ed06fd0ff4e8d286505fe4a626d77cad75921b7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2014-12-23  Richard Earnshaw  <rearnsha@arm.com>
+
+       * string/stpcpy.c (__stpcpy): Rewrite using strlen and memcpy.
+
 2014-12-23  Florian Weimer  <fweimer@redhat.com>
 
        * iconvdata/run-iconv-test.sh: Actually test iconv modules.
index 9185acc0341fd077e6e0602d095b05fc2d1069e0..fd6eb1c3dee08ed7ef6afbd87628dfe93e69bafe 100644 (file)
@@ -35,14 +35,8 @@ __stpcpy (dest, src)
      char *dest;
      const char *src;
 {
-  char *d = dest;
-  const char *s = src;
-
-  do
-    *d++ = *s;
-  while (*s++ != '\0');
-
-  return d - 1;
+  size_t len = strlen (src);
+  return memcpy (dest, src, len + 1) + len;
 }
 #ifdef libc_hidden_def
 libc_hidden_def (__stpcpy)