bug-tar
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-tar] Stripping too much from path names


From: Vin Shelton
Subject: [Bug-tar] Stripping too much from path names
Date: Mon, 09 Feb 2004 23:45:54 -0500

To whom it may concern -

Thank you for the excellent GNU tar package - I use it every day and
appreciate it very much.

Recently (I think around version 1.13.90, although I'm currently
running 1.13.92) the behavior around superfluous './' in the pathname
has changed.  When I create a tarfile as follows:

  touch foo
  tar cvf bar.tar ./foo

I get a warning message:

  tar: Removing leading `./' from member names
  ./foo

and sure enough the './' has been removed from the pathname stored in
the archive:

  tar tvf bar.tar
  -rw-r--r-- acs/acs           0 2004-02-09 23:33:39 foo

This is OK because foo and ./foo are really the same filename.

If, however, I do the following:

  mkdir baz
  touch baz/foo
  tar cvf bar.tar baz/./foo

I get the following warning:

tar: Removing leading `baz/./' from member names
baz/./foo

and, in fact, the contents of the archive is:


  tar tvf bar.tar
  -rw-r--r-- acs/acs           0 2004-02-09 23:37:11 foo


This is not OK, because foo is not the same a baz/./foo.  IMO, it
should be OK to strip intermediate occurrences of './', but it is not
OK to strip everything up to and including the './'.

I assume you already know about this behavior, but in case you don't,
I thought I should let you know about what I consider to be a bug.
Please consider that there are many scripts or makefiles that use tar
and some of them may generate filenames with superfluous './' in the
middle and they will stop working in the expected fashion.  (In fact,
it was a couple of such makefiles from the XEmacs package building
process that caused me to stumble upon this unexpected behavior.)

Respectfully,
  Vin Shelton




reply via email to

[Prev in Thread] Current Thread [Next in Thread]