Author Bill Lee
Recipients Bill Lee
Date 2016-02-25.16:49:19
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1456418959.65.0.0948342534374.issue26440@psf.upfronthosting.co.za>
In-reply-to
Content
Description
===========
With a file object, retrieved by the `extractfile` method of a TarFile object opened in stream mode, calling its `seekable` method will raise an AttributeError.

How to Reproduce
================
cat > seekable.py << EOF
import sys
import tarfile
tar = tarfile.open(fileobj=sys.stdin.buffer, mode='r|')
contentFile = tar.extractfile(tar.next())
print(contentFile.seekable())
EOF

tar -cf test.tar seekable.py
python seekable.py < test.tar


Traceback
=========
Traceback (most recent call last):
  File "seekable.py", line 5, in <module>
    print(contentFile.seekable())
  File "/usr/local/lib/python3.5/tarfile.py", line 649, in seekable
    return self.fileobj.seekable()

How to Fix
==========
I think that adding a method seekable(), which always return False, to tarfile._Stream will works.
History
Date User Action Args
2016-02-25 16:49:19Bill Leesetrecipients: + Bill Lee
2016-02-25 16:49:19Bill Leesetmessageid: <1456418959.65.0.0948342534374.issue26440@psf.upfronthosting.co.za>
2016-02-25 16:49:19Bill Leelinkissue26440 messages
2016-02-25 16:49:19Bill Leecreate