]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
Avoid updating timestamps when the destination is stdout 2998/head
authorMike Gilbert <floppym@gentoo.org>
Thu, 13 Jan 2022 21:47:18 +0000 (16:47 -0500)
committerMike Gilbert <floppym@gentoo.org>
Thu, 13 Jan 2022 21:47:18 +0000 (16:47 -0500)
Fixes: 9cd6c1ff4d56fc74a2cbdfd9bcc82a64e0fe4bb7
Fixes: https://github.com/facebook/zstd/issues/2997
programs/fileio.c

index 89eecb9e7d78001eba886d29e4d0a9fa2b47a681..5338fa62955badc119cbe7f97f2855bb9c3c3a99 100644 (file)
@@ -1679,6 +1679,7 @@ static int FIO_compressFilename_dstFile(FIO_ctx_t* const fCtx,
     if (ress.dstFile == NULL) {
         int dstFilePermissions = DEFAULT_FILE_PERMISSIONS;
         if ( strcmp (srcFileName, stdinmark)
+          && strcmp (dstFileName, stdoutmark)
           && UTIL_stat(srcFileName, &statbuf)
           && UTIL_isRegularFileStat(&statbuf) ) {
             dstFilePermissions = statbuf.st_mode;
@@ -2634,6 +2635,7 @@ static int FIO_decompressDstFile(FIO_ctx_t* const fCtx,
     if ((ress.dstFile == NULL) && (prefs->testMode==0)) {
         int dstFilePermissions = DEFAULT_FILE_PERMISSIONS;
         if ( strcmp(srcFileName, stdinmark)   /* special case : don't transfer permissions from stdin */
+          && strcmp(dstFileName, stdoutmark)
           && UTIL_stat(srcFileName, &statbuf)
           && UTIL_isRegularFileStat(&statbuf) ) {
             dstFilePermissions = statbuf.st_mode;