From 5570dba96fe017692a5790a176619234301ff3cb Mon Sep 17 00:00:00 2001 From: usa Date: Wed, 15 Nov 2017 03:44:58 +0000 Subject: nogvl readdir make SEGV on Windows * dir.c (readdir_without_gvl): workaround for Windows. [Bug #14108] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- dir.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'dir.c') diff --git a/dir.c b/dir.c index d8a7800089..519a3fce0a 100644 --- a/dir.c +++ b/dir.c @@ -743,6 +743,7 @@ to_be_skipped(const struct dirent *dp) return FALSE; } +#ifndef _WIN32 static void * nogvl_readdir(void *ptr) { @@ -756,6 +757,9 @@ readdir_without_gvl(struct dir_data *dirp) { return rb_thread_call_without_gvl(nogvl_readdir, dirp, RUBY_UBF_IO, 0); } +#else +#define readdir_without_gvl(dirp) READDIR((dirp)->dir, (dirp)->enc) +#endif /* * call-seq: -- cgit v1.2.3