diff -r d9cdfaf9ac04 Lib/tarfile.py --- a/Lib/tarfile.py Mon Mar 24 09:06:33 2014 +0100 +++ b/Lib/tarfile.py Mon Mar 24 12:54:17 2014 +0100 @@ -1423,7 +1423,8 @@ fileobj = bltn_open(name, self._mode) self._extfileobj = False else: - if name is None and hasattr(fileobj, "name"): + if (name is None and hasattr(fileobj, "name") and + isinstance(fileobj.name, (str, bytes))): name = fileobj.name if hasattr(fileobj, "mode"): self._mode = fileobj.mode