diff options
Diffstat (limited to 'usr.bin/tar/bsdtar.c')
-rw-r--r-- | usr.bin/tar/bsdtar.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/usr.bin/tar/bsdtar.c b/usr.bin/tar/bsdtar.c index 0e2092b..690270f 100644 --- a/usr.bin/tar/bsdtar.c +++ b/usr.bin/tar/bsdtar.c @@ -115,6 +115,7 @@ main(int argc, char **argv) struct bsdtar *bsdtar, bsdtar_storage; struct passwd *pwent; int opt; + int i; char mode; char buff[16]; @@ -390,6 +391,16 @@ main(int argc, char **argv) if (bsdtar->user_uname != NULL) free(bsdtar->user_uname); + for (i = 0; i < bsdtar_hash_size; i++) { + if (bsdtar->uname_lookup[i].uname != NULL) + free(bsdtar->uname_lookup[i].uname); + } + + for (i = 0; i < bsdtar_hash_size; i++) { + if (bsdtar->gname_lookup[i].gname != NULL) + free(bsdtar->gname_lookup[i].gname); + } + return 0; } |