ctags/etags-strcpy-overlap.patch

35 lines
829 B
Diff

Index: etags-17.38.1.4/etags.c
===================================================================
--- etags-17.38.1.4.orig/etags.c
+++ etags-17.38.1.4/etags.c
@@ -907,6 +907,13 @@ print_version ()
exit (EXIT_SUCCESS);
}
+static void etags_strcpy(char *to, char *from)
+{
+ while (*from)
+ *to++ = *from++;
+ *to = *from;
+}
+
#ifndef PRINT_UNDOCUMENTED_OPTIONS_HELP
# define PRINT_UNDOCUMENTED_OPTIONS_HELP FALSE
#endif
@@ -6695,13 +6702,13 @@ absolute_filename (file, dir)
else if (cp[0] != '/')
cp = slashp;
#endif
- strcpy (cp, slashp + 3);
+ etags_strcpy (cp, slashp + 3);
slashp = cp;
continue;
}
else if (slashp[2] == '/' || slashp[2] == '\0')
{
- strcpy (slashp, slashp + 2);
+ etags_strcpy (slashp, slashp + 2);
continue;
}
}