You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Due to r68455, os.listdir fails on debug build (windows).
//////////////////////////////////
Python 2.7a0 (trunk, Jan 10 2009, 18:36:15) [MSC v.1200 32 bit (Intel)]
on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
[33639 refs]
>>> os.listdir(".")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
WindowsError: [Error 0] この操作を正しく終了しました。: './*.*'
[33678 refs]
//////////////////////////////////
Probably a following XP Buildbot error comes from same reason.
Py_BEGIN_ALLOW_THREADSresult=FindNextFile(hFindFile, &FileData);
Py_END_ALLOW_THREADS/* FindNextFile sets error to ERROR_NO_MORE_FILES if it got to the end of the directory. */if (!result&&GetLastError() !=ERROR_NO_MORE_FILES) {
GetLastError() is sometimes 0 when should be ERROR_NO_MORE_FILES.
This happens because, on debug build, Py_END_ALLOW_THREADS finally
reaches PyThread_get_key_value in Python/thread_nt.h, and TlsGetValue
in it calls SetValueError(0) when function succeeds. See http://msdn.microsoft.com/en-us/library/ms686812.aspx
I've attached the patch to fix this. I believe LastError set by
TlsGetValue on its failure is not used anywhere.
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
bugs.python.org fields:
The text was updated successfully, but these errors were encountered: