From 6e653117028fa9c0b23cd3b7ebedd19eaec13b4c Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Sat, 15 Jan 2011 16:42:58 -0700 Subject: [PATCH] fix scheduler interaction with atomic mode --- src/racket/src/thread.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/racket/src/thread.c b/src/racket/src/thread.c index 80a8d5252d..5f71b9d267 100644 --- a/src/racket/src/thread.c +++ b/src/racket/src/thread.c @@ -4575,8 +4575,6 @@ void scheme_thread_block_enable_break(float sleep_time, int enable_break) void scheme_start_atomic(void) { - if (!do_atomic) - missed_context_switch = 0; do_atomic++; } @@ -4607,6 +4605,7 @@ void scheme_end_atomic(void) { scheme_end_atomic_no_swap(); if (!do_atomic && missed_context_switch) { + missed_context_switch = 0; scheme_thread_block(0.0); scheme_current_thread->ran_some = 1; }