diff --git a/mercurial/cext/osutil.c b/mercurial/cext/osutil.c index 7b068abe4aa2d1848cf91c2c203b68aa59feaaf7_bWVyY3VyaWFsL2NleHQvb3N1dGlsLmM=..499733de460faf0d8cee6ea5e22bd05cec2fc93c_bWVyY3VyaWFsL2NleHQvb3N1dGlsLmM= 100644 --- a/mercurial/cext/osutil.c +++ b/mercurial/cext/osutil.c @@ -1176,4 +1176,5 @@ char fpmode[4]; int fppos = 0; int plus; +#ifndef IS_PY3K FILE *fp; @@ -1179,4 +1180,5 @@ FILE *fp; +#endif if (!PyArg_ParseTupleAndKeywords(args, kwds, "et|yi:posixfile", kwlist, @@ -1248,6 +1250,7 @@ PyErr_SetFromErrnoWithFilename(PyExc_IOError, name); goto bail; } +#ifndef IS_PY3K fp = _fdopen(fd, fpmode); if (fp == NULL) { _close(fd); @@ -1262,6 +1265,11 @@ } PyFile_SetBufSize(file_obj, bufsize); +#else + file_obj = PyFile_FromFd(fd, name, mode, bufsize, NULL, NULL, NULL, 1); + if (file_obj == NULL) + goto bail; +#endif bail: PyMem_Free(name); return file_obj;