From 2a9a6b0e86320ba0793051f3050034ae4290c764 Mon Sep 17 00:00:00 2001
From: Thomas Wouters <thomas@python.org>
Date: Fri, 31 Mar 2006 22:38:19 +0000
Subject: In the fdopen(fd, 'a') case on UNIX, don't try to set fd's flags to
 -1 if fcntl() and fdopen() both fail. Will backport.

---
 Modules/posixmodule.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index a27a2af..50ee0e3 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -5777,7 +5777,7 @@ posix_fdopen(PyObject *self, PyObject *args)
 		if (flags != -1)
 			fcntl(fd, F_SETFL, flags | O_APPEND);
 		fp = fdopen(fd, mode);
-		if (fp == NULL)
+		if (fp == NULL && flags != -1)
 			/* restore old mode if fdopen failed */
 			fcntl(fd, F_SETFL, flags);
 	} else {
-- 
cgit v0.12

