Fix from SF bug #541980 (Jacques A. Vidrine).
When os.stat() for a file raises OSError, turn it into IOError per
documentation.
Bugfix candidate.
diff --git a/Lib/urllib.py b/Lib/urllib.py
index 2d53c12..50bed84 100644
--- a/Lib/urllib.py
+++ b/Lib/urllib.py
@@ -413,7 +413,10 @@
import mimetypes, mimetools, rfc822, StringIO
host, file = splithost(url)
localname = url2pathname(file)
- stats = os.stat(localname)
+ try:
+ stats = os.stat(localname)
+ except OSError, e:
+ raise IOError(e.errno, e.strerror, e.filename)
size = stats.st_size
modified = rfc822.formatdate(stats.st_mtime)
mtype = mimetypes.guess_type(url)[0]