OK. The linked branch checks for EINTR consistently in _readdir_pyx, using a common function. The _dirstate_helpers_pyx extension doesn't seem to have any problematic raises like that (it doesn't do much (any?) IO directly, it calls into regular Python).
Unfortunately, I don't think this fixes the reporter's problem as he's on Windows XP. I see some questionable error handling in _walkdirs_win32.pyx (e.g. the TODO comment), but given how differently Ctrl-C works on Windows I don't really know if any of this is likely to be related.
OK. The linked branch checks for EINTR consistently in _readdir_pyx, using a common function. The _dirstate_ helpers_ pyx extension doesn't seem to have any problematic raises like that (it doesn't do much (any?) IO directly, it calls into regular Python).
Unfortunately, I don't think this fixes the reporter's problem as he's on Windows XP. I see some questionable error handling in _walkdirs_win32.pyx (e.g. the TODO comment), but given how differently Ctrl-C works on Windows I don't really know if any of this is likely to be related.