From: Christian Herdtweck Date: Tue, 26 Jul 2016 07:58:59 +0000 (+0200) Subject: need to check whether _Stream has an _extfileobj, otherwise 2nd close will raise... X-Git-Url: http://developer.intra2net.com/git/?a=commitdiff_plain;h=aaea1b352b6ccfd68042cf54580363adb913f999;p=python-delta-tar need to check whether _Stream has an _extfileobj, otherwise 2nd close will raise OSError --- diff --git a/deltatar/tarfile.py b/deltatar/tarfile.py index b973881..d548f92 100644 --- a/deltatar/tarfile.py +++ b/deltatar/tarfile.py @@ -2749,7 +2749,8 @@ class TarFile(object): # close current volume file (even if fileobj is external) self.fileobj.close() - if isinstance(self.fileobj, _Stream): + if isinstance(self.fileobj, _Stream) \ + and self.fileobj._extfileobj: # _Stream.close() never closes external fileobj self._dbg(3, 'closing _Stream\'s external fileobj') self.fileobj.fileobj.close()