summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--archival/libunarchive/get_header_tar.c10
-rw-r--r--shell/msh.c3
2 files changed, 7 insertions, 6 deletions
diff --git a/archival/libunarchive/get_header_tar.c b/archival/libunarchive/get_header_tar.c
index 54c8f76..beaf308 100644
--- a/archival/libunarchive/get_header_tar.c
+++ b/archival/libunarchive/get_header_tar.c
@@ -217,9 +217,7 @@ char get_header_tar(archive_handle_t *archive_handle)
}
file_header->link_target = NULL;
if (!linkname && parse_names && tar.linkname[0]) {
- /* we trash magic[0] here, it's ok */
- tar.linkname[sizeof(tar.linkname)] = '\0';
- file_header->link_target = xstrdup(tar.linkname);
+ file_header->link_target = xstrndup(tar.linkname, sizeof(tar.linkname));
/* FIXME: what if we have non-link object with link_target? */
/* Will link_target be free()ed? */
}
@@ -237,10 +235,12 @@ char get_header_tar(archive_handle_t *archive_handle)
file_header->name = NULL;
if (!longname && parse_names) {
/* we trash mode[0] here, it's ok */
- tar.name[sizeof(tar.name)] = '\0';
+ //tar.name[sizeof(tar.name)] = '\0'; - gcc 4.3.0 would complain
+ tar.mode[0] = '\0';
if (tar.prefix[0]) {
/* and padding[0] */
- tar.prefix[sizeof(tar.prefix)] = '\0';
+ //tar.prefix[sizeof(tar.prefix)] = '\0'; - gcc 4.3.0 would complain
+ tar.padding[0] = '\0';
file_header->name = concat_path_file(tar.prefix, tar.name);
} else
file_header->name = xstrdup(tar.name);
diff --git a/shell/msh.c b/shell/msh.c
index fd4a541..a96e799 100644
--- a/shell/msh.c
+++ b/shell/msh.c
@@ -588,7 +588,6 @@ static const struct builtincmd builtincmds[] = {
{ NULL , NULL },
};
-static struct op *scantree(struct op *);
static struct op *dowholefile(int /*, int*/);
@@ -1278,6 +1277,7 @@ static int newfile(char *s)
}
+#ifdef UNUSED
struct op *scantree(struct op *head)
{
struct op *dotnode;
@@ -1309,6 +1309,7 @@ struct op *scantree(struct op *head)
return NULL;
}
+#endif
static void onecommand(void)