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.
This commit is contained in:
parent
c90397a7c9
commit
2a9a6b0e86
|
@ -5777,7 +5777,7 @@ posix_fdopen(PyObject *self, PyObject *args)
|
||||||
if (flags != -1)
|
if (flags != -1)
|
||||||
fcntl(fd, F_SETFL, flags | O_APPEND);
|
fcntl(fd, F_SETFL, flags | O_APPEND);
|
||||||
fp = fdopen(fd, mode);
|
fp = fdopen(fd, mode);
|
||||||
if (fp == NULL)
|
if (fp == NULL && flags != -1)
|
||||||
/* restore old mode if fdopen failed */
|
/* restore old mode if fdopen failed */
|
||||||
fcntl(fd, F_SETFL, flags);
|
fcntl(fd, F_SETFL, flags);
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue