aboutsummaryrefslogtreecommitdiff
path: root/archivers/sharutils/files/patch-src_unshar.c
diff options
context:
space:
mode:
Diffstat (limited to 'archivers/sharutils/files/patch-src_unshar.c')
-rw-r--r--archivers/sharutils/files/patch-src_unshar.c36
1 files changed, 0 insertions, 36 deletions
diff --git a/archivers/sharutils/files/patch-src_unshar.c b/archivers/sharutils/files/patch-src_unshar.c
deleted file mode 100644
index 9180a07812dc..000000000000
--- a/archivers/sharutils/files/patch-src_unshar.c
+++ /dev/null
@@ -1,36 +0,0 @@
---- src/unshar.c.orig 1995-11-21 17:22:14.000000000 +0100
-+++ src/unshar.c 2004-09-29 15:09:44.682469264 +0200
-@@ -346,8 +346,8 @@
- {
- size_t size_read;
- FILE *file;
-- char name_buffer[NAME_BUFFER_SIZE];
-- char copy_buffer[NAME_BUFFER_SIZE];
-+ char name_buffer[NAME_BUFFER_SIZE] = {'\0'};
-+ char copy_buffer[NAME_BUFFER_SIZE] = {'\0'};
- int optchar;
-
- program_name = argv[0];
-@@ -409,14 +409,14 @@
- if (optind < argc)
- for (; optind < argc; optind++)
- {
-- if (argv[optind][0] == '/')
-- stpcpy (name_buffer, argv[optind]);
-- else
-- {
-- char *cp = stpcpy (name_buffer, current_directory);
-- *cp++ = '/';
-- stpcpy (cp, argv[optind]);
-- }
-+ if (argv[optind][0] == '/') {
-+ strncpy (name_buffer, argv[optind], sizeof(name_buffer));
-+ name_buffer[sizeof(name_buffer)-1] = '\0';
-+ }
-+ else {
-+ snprintf(name_buffer, sizeof(name_buffer),"%s/%s", current_directory, argv[optind]);
-+ name_buffer[sizeof(name_buffer)-1] = '\0';
-+ }
- if (file = fopen (name_buffer, "r"), !file)
- error (EXIT_FAILURE, errno, name_buffer);
- unarchive_shar_file (name_buffer, file);