diff --git a/tools/gpgtar-extract.c b/tools/gpgtar-extract.c index b0e17cb10..8613d193f 100644 --- a/tools/gpgtar-extract.c +++ b/tools/gpgtar-extract.c @@ -345,15 +345,7 @@ gpgtar_extract (const char *filename, int decrypt) dirname = xtrystrdup (opt.directory); else { - if (filename) - { - dirprefix = strrchr (filename, '/'); - if (dirprefix) - dirprefix++; - else - dirprefix = filename; - } - else if (opt.filename) + if (opt.filename) { dirprefix = strrchr (opt.filename, '/'); if (dirprefix) @@ -361,6 +353,14 @@ gpgtar_extract (const char *filename, int decrypt) else dirprefix = opt.filename; } + else if (filename) + { + dirprefix = strrchr (filename, '/'); + if (dirprefix) + dirprefix++; + else + dirprefix = filename; + } if (!dirprefix || !*dirprefix) dirprefix = "GPGARCH";