[ python-Bugs-1471427 ] tarfile.py chokes on long names
SourceForge.net
noreply at sourceforge.net
Sun May 7 13:55:17 CEST 2006
Bugs item #1471427, was opened at 2006-04-16 22:34
Message generated for change (Comment added) made by alexanderweb
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1471427&group_id=5470
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Python Library
Group: Python 2.5
Status: Open
>Resolution: Fixed
Priority: 5
Submitted By: Alexander Schremmer (alexanderweb)
Assigned to: Nobody/Anonymous (nobody)
Summary: tarfile.py chokes on long names
Initial Comment:
The following bug is reproducible on Py 2.4.3 and 2.5.
It was tested on Windows. You need a tarfile with a
long file name that triggers the GNU LONGNAME
extension.
Extracting such a file gives me an IO error because it
tries to create a file with a slash at the end. This is
because
# Some old tar programs represent a directory
as a regular
# file with a trailing slash.
if tarinfo.isreg() and tarinfo.name.endswith("/
"):
tarinfo.type = DIRTYPE
sets the type incorrectly after it was called from the
callback proc which has no possiblity to set the name
of the intermediary tarinfo class because it is
instantiated in the next-method.
So this yields a directory which should be a file which
is obviously wrong. Might be related to commit 41340
"Patch #1338314, Bug #1336623". (At least the code
changed there is causing this bug).
----------------------------------------------------------------------
>Comment By: Alexander Schremmer (alexanderweb)
Date: 2006-05-07 13:55
Message:
Logged In: YES
user_id=254738
Thanks, that seems to work. Try to get this into Py 2.5 :)
----------------------------------------------------------------------
Comment By: Lars Gustäbel (gustaebel)
Date: 2006-04-25 22:59
Message:
Logged In: YES
user_id=642936
Fixing this issue is not quite as simple as I hoped it to
be. It would be possible to implement a quick fix that
solves the problem, but that would be too ugly for a stdlib
module. Instead, I have been busy writing a preliminary fix
for my development version of tarfile.py which is available
at http://www.gustaebel.de/lars/tarfile/.
It would be nice of you, if you'd download the 0.8.0 version
there and give it a try. Thank you.
----------------------------------------------------------------------
Comment By: Alexander Schremmer (alexanderweb)
Date: 2006-04-16 22:34
Message:
Logged In: YES
user_id=254738
Hmm, I just want to clarify that tarfile doesn't give the IO
error (it passes silently) but my code that expects a file
instead of a directory ;-)
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1471427&group_id=5470
More information about the Python-bugs-list
mailing list