]> Dogcows Code - chaz/tar/commit
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)
commit1689ed43885c8418c29d1365ae3a06450a460830
tree2b7c419bc5c715366a176b6448b8c855f8ce28b2
parent2af87fa2776c8125a587a9b0c2c4fae3bf921ff7
Improve one-top-level functionality

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.
12 files changed:
doc/tar.1
doc/tar.texi
src/common.h
src/extract.c
src/list.c
src/suffix.c
src/tar.c
tests/Makefile.am
tests/onetop01.at [new file with mode: 0644]
tests/onetop02.at [new file with mode: 0644]
tests/onetop03.at [new file with mode: 0644]
tests/testsuite.at
This page took 0.025738 seconds and 4 git commands to generate.