only test for named pipe when os.stat doesn't raise #6209
diff --git a/Lib/shutil.py b/Lib/shutil.py
index c46ec47..a689256 100644
--- a/Lib/shutil.py
+++ b/Lib/shutil.py
@@ -58,9 +58,10 @@
except OSError:
# File most likely does not exist
pass
- # XXX What about other special files? (sockets, devices...)
- if stat.S_ISFIFO(st.st_mode):
- raise SpecialFileError("`%s` is a named pipe" % fn)
+ else:
+ # XXX What about other special files? (sockets, devices...)
+ if stat.S_ISFIFO(st.st_mode):
+ raise SpecialFileError("`%s` is a named pipe" % fn)
try:
fsrc = open(src, 'rb')
fdst = open(dst, 'wb')