mirror of
git://git.gnupg.org/gnupg.git
synced 2024-12-22 10:19:57 +01:00
gpgtar: Make option -C work for archive creation.
* tools/gpgtar-create.c (gpgtar_create): Switch to the -C directory. -- The -C option is pretty useful given that pattern are always relative to the current directory. In contrast to GNU tar, the switching is done only once. Signed-off-by: Werner Koch <wk@gnupg.org>
This commit is contained in:
parent
91ae3e7fb6
commit
b3a7a51407
@ -2014,10 +2014,11 @@ Do not actually output the extracted files.
|
||||
@item --directory @var{dir}
|
||||
@itemx -C @var{dir}
|
||||
@opindex directory
|
||||
Extract the files into the directory @var{dir}. The
|
||||
default is to take the directory name from
|
||||
the input filename. If no input filename is known a directory named
|
||||
@file{GPGARCH} is used.
|
||||
Extract the files into the directory @var{dir}. The default is to
|
||||
take the directory name from the input filename. If no input filename
|
||||
is known a directory named @file{GPGARCH} is used. For tarball
|
||||
creation, switch to directory @var{dir} before performing any
|
||||
operations.
|
||||
|
||||
@item --files-from @var{file}
|
||||
@itemx -T @var{file}
|
||||
|
@ -762,6 +762,14 @@ gpgtar_create (char **inpattern, int encrypt, int sign)
|
||||
memset (scanctrl, 0, sizeof *scanctrl);
|
||||
scanctrl->flist_tail = &scanctrl->flist;
|
||||
|
||||
if (opt.directory && gnupg_chdir (opt.directory))
|
||||
{
|
||||
err = gpg_error_from_syserror ();
|
||||
log_error ("chdir to '%s' failed: %s\n",
|
||||
opt.directory, gpg_strerror (err));
|
||||
return err;
|
||||
}
|
||||
|
||||
while (!eof_seen)
|
||||
{
|
||||
char *pat, *p;
|
||||
|
@ -112,7 +112,7 @@ static ARGPARSE_OPTS opts[] = {
|
||||
ARGPARSE_group (302, N_("@\nTar options:\n ")),
|
||||
|
||||
ARGPARSE_s_s (oDirectory, "directory",
|
||||
N_("|DIRECTORY|extract files into DIRECTORY")),
|
||||
N_("|DIRECTORY|change to DIRECTORY first")),
|
||||
ARGPARSE_s_s (oFilesFrom, "files-from",
|
||||
N_("|FILE|get names to create from FILE")),
|
||||
ARGPARSE_s_n (oNull, "null", N_("-T reads null-terminated names")),
|
||||
|
Loading…
x
Reference in New Issue
Block a user