We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent a3ded44 commit d8e1279Copy full SHA for d8e1279
1 file changed
Python/fileutils.c
@@ -16,6 +16,7 @@
16
# include "pycore_fileutils_windows.h" // FILE_STAT_BASIC_INFORMATION
17
# define fdopen _fdopen
18
# define dup _dup
19
+# define close _close
20
# if defined(MS_WINDOWS_GAMES) && !defined(MS_WINDOWS_DESKTOP)
21
# define PATHCCH_ALLOW_LONG_PATHS 0x01
22
# else
@@ -2065,12 +2066,20 @@ int
2065
2066
_Py_fdprintf(int fd, const char *fmt, ...)
2067
{
2068
int newfd = dup(fd);
2069
+ if (newfd < 0) {
2070
+ return -1;
2071
+ }
2072
FILE *handle = fdopen(newfd, "a");
2073
+ if (handle == NULL) {
2074
+ close(newfd);
2075
2076
2077
va_list vargs;
2078
va_start(vargs, fmt);
2079
int res = vfprintf(handle, fmt, vargs);
2080
va_end(vargs);
2081
fclose(handle);
2082
2083
if (res != 0) {
2084
return -1;
2085
}
0 commit comments