File tree Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Original file line number Diff line number Diff line change @@ -6906,6 +6906,11 @@ posix_fdopen(PyObject *self, PyObject *args)
6906
6906
}
6907
6907
}
6908
6908
#endif
6909
+ /* The dummy filename used here must be kept in sync with the value
6910
+ tested against in gzip.GzipFile.__init__() - see issue #13781. */
6911
+ f = PyFile_FromFile (NULL , "<fdopen>" , orgmode , fclose );
6912
+ if (f == NULL )
6913
+ return NULL ;
6909
6914
Py_BEGIN_ALLOW_THREADS
6910
6915
#if !defined(MS_WINDOWS ) && defined(HAVE_FCNTL_H )
6911
6916
if (mode [0 ] == 'a' ) {
@@ -6926,13 +6931,10 @@ posix_fdopen(PyObject *self, PyObject *args)
6926
6931
#endif
6927
6932
Py_END_ALLOW_THREADS
6928
6933
PyMem_FREE (mode );
6929
- if (fp == NULL )
6934
+ if (fp == NULL ) {
6935
+ Py_DECREF (f );
6930
6936
return posix_error ();
6931
- /* The dummy filename used here must be kept in sync with the value
6932
- tested against in gzip.GzipFile.__init__() - see issue #13781. */
6933
- f = PyFile_FromFile (NULL , "<fdopen>" , orgmode , fclose );
6934
- if (f == NULL )
6935
- return NULL ;
6937
+ }
6936
6938
/* We now know we will succeed, so initialize the file object. */
6937
6939
((PyFileObject * )f )-> f_fp = fp ;
6938
6940
PyFile_SetBufSize (f , bufsize );
You can’t perform that action at this time.
0 commit comments