eglibc: replace the use of stpncpy with strncpy + manual termination (stpncpy is...
[openwrt/openwrt.git] / toolchain / eglibc / patches / 2.9 / 100-darwin_cross.patch
index c149337c39ac5016f01de35ff1bcad29674625eb..a9fddb7d0124bb7dbd8737cc54f61abc6a431d2f 100644 (file)
  #include <ctype.h>
  #include <sys/types.h>
  #include <sys/param.h>
+@@ -998,9 +1002,10 @@ mkfile_output (struct commandline *cmd)
+       abort ();
+       temp = rindex (cmd->infile, '.');
+       cp = stpcpy (mkfilename, "Makefile.");
+-      if (temp != NULL)
+-      *((char *) stpncpy (cp, cmd->infile, temp - cmd->infile)) = '\0';
+-      else
++      if (temp != NULL) {
++      strncpy (cp, cmd->infile, temp - cmd->infile);
++      cp[temp - cmd->infile - 1] = '\0';
++      } else
+       stpcpy (cp, cmd->infile);
+     }
 --- a/libc/sunrpc/rpc_scan.c
 +++ b/libc/sunrpc/rpc_scan.c
 @@ -39,7 +39,11 @@