]> Dogcows Code - chaz/tar/commitdiff
Improve one-top-level functionality
authorSergey Poznyakoff <gray@gnu.org.ua>
Tue, 28 Jan 2014 09:04:20 +0000 (11:04 +0200)
committerSergey Poznyakoff <gray@gnu.org.ua>
Tue, 28 Jan 2014 10:35:39 +0000 (12:35 +0200)
Make sure the changes become visible with --show-transformed-names.

* src/common.h (strip_compression_suffix): New function.
(one_top_level): Rename to one_top_level_dir. All uses changed.
* src/extract.c (extr_init): Use strip_compression_suffix.
Bail out if unable to determine top-level directory.
(maybe_prepend_name): Remove. All uses removed.
* src/tar.c (options): --one-top-level takes optional argument.
(parse_opt): Handle it.
* src/list.c (enforce_one_top_level): New function.
(transform_stat_info): Call enforce_one_top_level if required.
* src/suffix.c (compression_suffixes): List "tar" (no compression);
terminate with NULL entry.
(find_compression_suffix): New static.
(strip_compression_suffix): New function.

* doc/tar.1: Update.
* doc/tar.texi: Update.

* tests/onetop01.at: New testcase.
* tests/onetop02.at: New testcase.
* tests/onetop03.at: New testcase.
* tests/Makefile.am: Add new testcases.
* tests/testsuite.at: Likewise.


No differences found
This page took 0.027227 seconds and 4 git commands to generate.