summaryrefslogtreecommitdiff
path: root/thread.c
diff options
context:
space:
mode:
authorkosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-05-28 12:28:32 +0000
committerkosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-05-28 12:28:32 +0000
commit827a17bdbbadc27ddcb602a761e4af1295ba60e4 (patch)
treeac6116990b800cea8027a15679c5ce7195fc48e7 /thread.c
parenta51acf36898f819d5da89165d394d638e505d78b (diff)
* thread.c (blocking_region_begin): avoid RUBY_VM_CHECK_INTS()
call during GVL state transition. [Bug#3354] [ruby-dev:41435] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'thread.c')
-rw-r--r--thread.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/thread.c b/thread.c
index 1956721da7..dcf7a2e838 100644
--- a/thread.c
+++ b/thread.c
@@ -125,8 +125,8 @@ static inline void blocking_region_end(rb_thread_t *th, struct rb_blocking_regio
#define blocking_region_begin(th, region, func, arg) \
do { \
(region)->prev_status = (th)->status; \
- (th)->blocking_region_buffer = (region); \
set_unblock_function((th), (func), (arg), &(region)->oldubf); \
+ (th)->blocking_region_buffer = (region); \
(th)->status = THREAD_STOPPED; \
thread_debug("enter blocking region (%p)\n", (void *)(th)); \
RB_GC_SAVE_MACHINE_CONTEXT(th); \