summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2011-10-07 14:16:31 (GMT)
committerAntoine Pitrou <solipsis@pitrou.net>2011-10-07 14:16:31 (GMT)
commit586bfe4500465442acff5043f7b589e4a8b97b6a (patch)
tree3b2af5c4db751fb4a103a9058335fb65ab342ad1
parent7b847a46bca22797fcb3149d5e52627fc439ba18 (diff)
downloadcpython-586bfe4500465442acff5043f7b589e4a8b97b6a.zip
cpython-586bfe4500465442acff5043f7b589e4a8b97b6a.tar.gz
cpython-586bfe4500465442acff5043f7b589e4a8b97b6a.tar.bz2
Issue #13063: the Windows error ERROR_NO_DATA (numbered 232 and described
as "The pipe is being closed") is now mapped to POSIX errno EPIPE (previously EINVAL).
-rw-r--r--Misc/NEWS4
-rw-r--r--PC/errmap.h1
-rw-r--r--PC/generrmap.c3
3 files changed, 8 insertions, 0 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index 44435fe..e9555b3 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,10 @@ What's New in Python 3.2.3?
Core and Builtins
-----------------
+- Issue #13063: the Windows error ERROR_NO_DATA (numbered 232 and described
+ as "The pipe is being closed") is now mapped to POSIX errno EPIPE
+ (previously EINVAL).
+
- Issue #12911: Fix memory consumption when calculating the repr() of huge
tuples or lists.
diff --git a/PC/errmap.h b/PC/errmap.h
index 8dde31c..985f673 100644
--- a/PC/errmap.h
+++ b/PC/errmap.h
@@ -72,6 +72,7 @@ int winerror_to_errno(int winerror)
case 202: return 8;
case 206: return 2;
case 215: return 11;
+ case 232: return 32;
case 267: return 20;
case 1816: return 12;
default: return EINVAL;
diff --git a/PC/generrmap.c b/PC/generrmap.c
index 0323cd4..953344c 100644
--- a/PC/generrmap.c
+++ b/PC/generrmap.c
@@ -19,6 +19,9 @@ int main()
/* Issue #12802 */
if (i == ERROR_DIRECTORY)
errno = ENOTDIR;
+ /* Issue #13063 */
+ else if (i == ERROR_NO_DATA)
+ errno = EPIPE;
else
continue;
}