]> git.ipfire.org Git - thirdparty/bash.git/blobdiff - stringlib.c
Bash-4.3 patch 32
[thirdparty/bash.git] / stringlib.c
index 09866d5dadec0b73975d365e0a022f130350a4a4..95092993adfa4e3a24e5da64e07aabf6d40794f6 100644 (file)
@@ -125,7 +125,7 @@ find_index_in_alist (string, alist, flags)
    not including END. */
 char *
 substring (string, start, end)
-     char *string;
+     const char *string;
      int start, end;
 {
   register int len;
@@ -133,7 +133,7 @@ substring (string, start, end)
 
   len = end - start;
   result = (char *)xmalloc (len + 1);
-  strncpy (result, string + start, len);
+  memcpy (result, string + start, len);
   result[len] = '\0';
   return (result);
 }
@@ -158,7 +158,7 @@ strsub (string, pat, rep, global)
          if (replen)
            RESIZE_MALLOCED_BUFFER (temp, templen, replen, tempsize, (replen * 2));
 
-         for (r = rep; *r; )
+         for (r = rep; *r; )   /* can rep == "" */
            temp[templen++] = *r++;
 
          i += patlen ? patlen : 1;     /* avoid infinite recursion */