From 074203d270bba2046f6d272f9d01385257be9fee Mon Sep 17 00:00:00 2001 From: matz Date: Thu, 16 Nov 2000 07:24:21 +0000 Subject: matz git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- rubysig.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'rubysig.h') diff --git a/rubysig.h b/rubysig.h index 88b30830d9..1975215ef0 100644 --- a/rubysig.h +++ b/rubysig.h @@ -37,8 +37,12 @@ typedef int rb_atomic_t; # define ATOMIC_INC(var) (++(var)) # define ATOMIC_DEC(var) (--(var)) -# define TRAP_BEG (rb_trap_immediate=1) -# define TRAP_END (rb_trap_immediate=0) +# define TRAP_BEG do {\ + int trap_immediate = rb_trap_immediate;\ + rb_trap_immediate = 1; +# define TRAP_END rb_trap_immediate = trap_immediate;\ +} while (0) + # define RUBY_CRITICAL(statements) do {\ int trap_immediate = rb_trap_immediate;\ rb_trap_immediate = 0;\ -- cgit v1.2.3