tar: fix memory leaks when processing symlinks or parsing pax headers (#2338)
Fix memory leaks introduced by #2127: * `struct tar` member `entry_linkpath` was moved at the same time as other members were removed, but its cleanup was accidentally removed with the others. * `header_pax_extension` local variable `attr_name` was not cleaned up. Resolves #2336
This commit is contained in:
1 parent
e939c97a57
commit
7c3980367e
1 file changed
+2
@@ -296,6 +296,7 @@ archive_read_format_tar_cleanup(struct archive_read *a)
|
||||
archive_string_free(&tar->entry_pathname_override);
|
||||
archive_string_free(&tar->entry_uname);
|
||||
archive_string_free(&tar->entry_gname);
|
||||
archive_string_free(&tar->entry_linkpath);
|
||||
archive_string_free(&tar->line);
|
||||
archive_string_free(&tar->pax_global);
|
||||
archive_string_free(&tar->longname);
|
||||
@@ -1935,6 +1936,7 @@ header_pax_extension(struct archive_read *a, struct tar *tar,
|
||||
*unconsumed += 1;
|
||||
tar_flush_unconsumed(a, unconsumed);
|
||||
}
|
||||
archive_string_free(&attr_name);
|
||||
*unconsumed += ext_size + ext_padding;
|
||||
|
||||
/*
|
||||
|
||||
Reference in new issue
Block a user