X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Flist.c;h=a0c65a334bf29d74539281a168b203c19e9129fa;hb=c086e08a4bb931721b2bc8db545ecb3eeaa431dd;hp=f6e119a0d9ed52293d92ddc345d56b02dbdac176;hpb=05f5fdb687ce6873d002e3ab7798a12fb8b55265;p=chaz%2Ftar diff --git a/src/list.c b/src/list.c index f6e119a..a0c65a3 100644 --- a/src/list.c +++ b/src/list.c @@ -1,5 +1,5 @@ /* List a tar archive. - Copyright (C) 1988, 1992 Free Software Foundation + Copyright (C) 1988, 1992, 1993 Free Software Foundation This file is part of GNU Tar. @@ -51,6 +51,8 @@ extern FILE *msg_file; long from_oct (); /* Decode octal number */ void demode (); /* Print file mode */ +void restore_saved_dir_info (); +PTR ck_malloc (); union record *head; /* Points to current archive header */ struct stat hstat; /* Stat struct corresponding */ @@ -402,7 +404,7 @@ recurse: : head->header.arch_name); if (current_file_name) free (current_file_name); - current_file_name = malloc (strlen (name) + 1); + current_file_name = ck_malloc (strlen (name) + 1); strcpy (current_file_name, name); name = (next_long_link @@ -410,7 +412,7 @@ recurse: : head->header.arch_linkname); if (current_link_name) free (current_link_name); - current_link_name = malloc (strlen (name) + 1); + current_link_name = ck_malloc (strlen (name) + 1); strcpy (current_link_name, name); next_long_link = next_long_name = 0; @@ -443,11 +445,9 @@ decode_header (header, st, stdp, wantug) int wantug; { long from_oct (); - char **longp; - char *bp, *data; - int size, written; st->st_mode = from_oct (8, header->header.mode); + st->st_mode &= 07777; st->st_mtime = from_oct (1 + 12, header->header.mtime); if (f_gnudump) { @@ -561,9 +561,6 @@ print_header () int pad; char *name; extern long baserec; - static char *longname; - static char *longlink; - int bumplongs; if (f_sayblock) fprintf (msg_file, "rec %10d: ", baserec + (ar_record - ar_block));