diff options
author | Glenn L McGrath <bug1@ihug.co.nz> | 2004-07-21 09:00:39 +0000 |
---|---|---|
committer | Glenn L McGrath <bug1@ihug.co.nz> | 2004-07-21 09:00:39 +0000 |
commit | a88ae491e3422b7ea37a00a63ed2d2c439b535d2 (patch) | |
tree | d2722af2a942c07cd8947c9373e9d654bc2534fa | |
parent | f828da00201ad4c245f22fd5466be1ddb63b0f74 (diff) | |
download | busybox-a88ae491e3422b7ea37a00a63ed2d2c439b535d2.tar.gz |
Fixup -T (--files-from) option, works for non-directories now
-rw-r--r-- | archival/tar.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/archival/tar.c b/archival/tar.c index efdc46587..2de6454e7 100644 --- a/archival/tar.c +++ b/archival/tar.c @@ -625,7 +625,7 @@ static char get_header_tar_Z(archive_handle_t *archive_handle) #endif #ifdef CONFIG_FEATURE_TAR_FROM -# define TAR_OPT_FROM_FILE (1 << (8 + TAR_OPT_FLAG_CREATE + TAR_OPT_FLAG_BZIP2)) +# define TAR_OPT_INCLUDE_FROM (1 << (8 + TAR_OPT_FLAG_CREATE + TAR_OPT_FLAG_BZIP2)) # define TAR_OPT_EXCLUDE_FROM (1 << (8 + TAR_OPT_FLAG_CREATE + TAR_OPT_FLAG_BZIP2 + 1)) # define TAR_OPT_STR_FROM "T:X:" # define TAR_OPT_FLAG_FROM 2 @@ -675,7 +675,7 @@ static const struct option tar_long_options[] = { { "bzip2", 0, NULL, 'j' }, # endif # ifdef CONFIG_FEATURE_TAR_FROM - { "from-file", 1, NULL, 'T' }, + { "files-from", 1, NULL, 'T' }, { "exclude-from", 1, NULL, 'X' }, # endif # ifdef CONFIG_FEATURE_TAR_GZIP @@ -722,7 +722,7 @@ int tar_main(int argc, char **argv) &base_dir, /* Change to dir <optarg> */ &tar_filename /* archive filename */ #ifdef CONFIG_FEATURE_TAR_FROM - , NULL, + , &(tar_handle->accept), &(tar_handle->reject) #endif ); @@ -787,6 +787,9 @@ int tar_main(int argc, char **argv) if(opt & TAR_OPT_EXCLUDE_FROM) { tar_handle->reject = append_file_list_to_list(tar_handle->reject); } + if(opt & TAR_OPT_INCLUDE_FROM) { + tar_handle->accept = append_file_list_to_list(tar_handle->accept); + } #endif /* Check if we are reading from stdin */ |