aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2023-01-26 10:54:44 +0000
committerWerner Koch <[email protected]>2023-01-26 11:01:12 +0000
commitfbc181377993ccf6aa74b2d57789fd32c2328dd7 (patch)
tree5a8063d84edf147f0edaa5dba727da8483a61fe7
parentgpgtar: Allow decryption from stdin. (diff)
downloadgnupg-fbc181377993ccf6aa74b2d57789fd32c2328dd7.tar.gz
gnupg-fbc181377993ccf6aa74b2d57789fd32c2328dd7.zip
gpgtar: Fix parent directory creation bug
* tools/gpgtar-extract.c (extract_directory): Ignore EEXIST on parent directory creation.
-rw-r--r--tools/gpgtar-extract.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/tools/gpgtar-extract.c b/tools/gpgtar-extract.c
index 0112282d3..e1c0c6054 100644
--- a/tools/gpgtar-extract.c
+++ b/tools/gpgtar-extract.c
@@ -198,6 +198,9 @@ extract_directory (const char *dirname, tar_header_t hdr, strlist_t exthdr)
{
*p = 0;
rc = gnupg_mkdir (fname, "-rwx------");
+ if (rc && (gpg_err_code (gpg_error_from_syserror ())
+ == GPG_ERR_EEXIST))
+ rc = 0;
*p = '/';
if (rc)
break;