diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2016-04-16 17:51:17 +0300 |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2016-04-16 17:51:17 +0300 |
commit | ca2fbf79712704df53b6a35902dfb898ef5ff0c7 (patch) | |
tree | 5eb5cd45b334eb0e06d4133c47feae1feb9cda4a /Python/fileutils.c | |
parent | 0a90ca70c8aa04bf47777088baed8e1d6acaadea (diff) | |
parent | f93daabc06d2966489c85bf24b4542da99b55049 (diff) | |
download | cpython-ca2fbf79712704df53b6a35902dfb898ef5ff0c7.tar.gz |
Issue #26783: test_os.WalkTests.test_walk_topdown did't test fwalk and bytes.
Patch by Aviv Palivoda.
Diffstat (limited to 'Python/fileutils.c')
-rw-r--r-- | Python/fileutils.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Python/fileutils.c b/Python/fileutils.c index 06d632a28e..a710c99129 100644 --- a/Python/fileutils.c +++ b/Python/fileutils.c @@ -683,6 +683,10 @@ _Py_fstat(int fd, struct _Py_stat_struct *status) { int res; +#ifdef WITH_THREAD + assert(PyGILState_Check()); +#endif + Py_BEGIN_ALLOW_THREADS res = _Py_fstat_noraise(fd, status); Py_END_ALLOW_THREADS @@ -1164,6 +1168,10 @@ _Py_read(int fd, void *buf, size_t count) int err; int async_err = 0; +#ifdef WITH_THREAD + assert(PyGILState_Check()); +#endif + /* _Py_read() must not be called with an exception set, otherwise the * caller may think that read() was interrupted by a signal and the signal * handler raised an exception. */ @@ -1319,6 +1327,10 @@ _Py_write_impl(int fd, const void *buf, size_t count, int gil_held) Py_ssize_t _Py_write(int fd, const void *buf, size_t count) { +#ifdef WITH_THREAD + assert(PyGILState_Check()); +#endif + /* _Py_write() must not be called with an exception set, otherwise the * caller may think that write() was interrupted by a signal and the signal * handler raised an exception. */ @@ -1468,6 +1480,10 @@ _Py_dup(int fd) DWORD ftype; #endif +#ifdef WITH_THREAD + assert(PyGILState_Check()); +#endif + if (!_PyVerify_fd(fd)) { PyErr_SetFromErrno(PyExc_OSError); return -1; |