From d378c3149c6c24e7788f04a6d20ba360f3ea407e Mon Sep 17 00:00:00 2001 From: Robert Griebl Date: Fri, 19 Jul 2002 00:05:54 +0000 Subject: Applied vodz' patches #49 and #50 (with a small correction in runshell.c) #49: I found one memory overflow and memory leak in "ln" applet. Last patch reduced also 54 bytes. ;) #50: I found bug in loginutils/Makefile.in. New patch have also new function to libbb and aplied this to applets and other cosmetic changes. --- archival/libunarchive/get_header_ar.c | 3 +-- archival/libunarchive/unarchive.c | 4 +--- 2 files changed, 2 insertions(+), 5 deletions(-) (limited to 'archival/libunarchive') diff --git a/archival/libunarchive/get_header_ar.c b/archival/libunarchive/get_header_ar.c index 1618b767f..f172fa7c9 100644 --- a/archival/libunarchive/get_header_ar.c +++ b/archival/libunarchive/get_header_ar.c @@ -91,8 +91,7 @@ file_header_t *get_header_ar(FILE *src_stream) } } else { /* short filenames */ - typed->name = xcalloc(1, 16); - strncpy(typed->name, ar.formated.name, 16); + typed->name = xstrndup(ar.formated.name, 16); } typed->name[strcspn(typed->name, " /")]='\0'; diff --git a/archival/libunarchive/unarchive.c b/archival/libunarchive/unarchive.c index 312b498a1..03e3c3ec2 100644 --- a/archival/libunarchive/unarchive.c +++ b/archival/libunarchive/unarchive.c @@ -58,9 +58,7 @@ char *extract_archive(FILE *src_stream, FILE *out_stream, const file_header_t *f return(NULL); } } - full_name = xmalloc(strlen(prefix) + strlen(path) + 1); - strcpy(full_name, prefix); - strcat(full_name, path); + bb_asprintf(&full_name, "%s%s", prefix, path); } else { full_name = file_entry->name; } -- cgit v1.2.3