* Fixed tar creation support when reading from stdin ('tar -cf - . ')
authorEric Andersen <andersen@codepoet.org>
Thu, 6 Jul 2000 22:51:35 +0000 (22:51 -0000)
committerEric Andersen <andersen@codepoet.org>
Thu, 6 Jul 2000 22:51:35 +0000 (22:51 -0000)
    thanks to Daniel Quinlan <quinlan@transmeta.com>
 -Erik

Changelog
archival/tar.c
tar.c

index f9d385622ca1e45ddc42896799dfcff40c744693..b9ca9a1489d55e0f0e633a4b9c72876a21f32272 100644 (file)
--- a/Changelog
+++ b/Changelog
@@ -3,6 +3,8 @@
        * Fixed a _horrible_ bug where 'tar -tvf' could unlink
            local files!!!  Fix thanks to Marius Groeger <mgroeger@sysgo.de>
        * Fixed a nasty bug in tar when could mess up saved symlinks.
+       * Fixed tar creation support when reading from stdin ('tar -cf - . ') 
+           thanks to Daniel Quinlan <quinlan@transmeta.com>
        * Updates to handle Linux 2.4.0 kernels (kludged around the
            "none" entries in /proc/mounts, added a hack to make sysinfo
            work with both old and new kernels).
index 611bbd9a015271d52ec63829f639d5e6981aed3a..af017d112bc0a4d513e388dc3700afd74ccda42c 100644 (file)
@@ -198,6 +198,8 @@ extern int tar_main(int argc, char **argv)
                                        tarName = *(++argv);
                                        if (tarName == NULL)
                                                fatalError( "Option requires an argument: No file specified\n");
+                                       if (!strcmp(tarName, "-"))
+                                               tostdoutFlag = TRUE;
                                        stopIt=TRUE;
                                        break;
 
diff --git a/tar.c b/tar.c
index 611bbd9a015271d52ec63829f639d5e6981aed3a..af017d112bc0a4d513e388dc3700afd74ccda42c 100644 (file)
--- a/tar.c
+++ b/tar.c
@@ -198,6 +198,8 @@ extern int tar_main(int argc, char **argv)
                                        tarName = *(++argv);
                                        if (tarName == NULL)
                                                fatalError( "Option requires an argument: No file specified\n");
+                                       if (!strcmp(tarName, "-"))
+                                               tostdoutFlag = TRUE;
                                        stopIt=TRUE;
                                        break;