=================================================================== RCS file: /home/cvs/OpenXM_contrib2/windows/engine2000/io.c,v retrieving revision 1.7 retrieving revision 1.9 diff -u -p -r1.7 -r1.9 --- OpenXM_contrib2/windows/engine2000/io.c 2006/12/05 01:43:17 1.7 +++ OpenXM_contrib2/windows/engine2000/io.c 2017/08/30 09:40:31 1.9 @@ -124,7 +124,10 @@ void watch_intr() { if ( doing_batch ) send_intr(); /* for Asir; recv_intr is reset to 0 in Asir */ + enter_signal_cs(); recv_intr = 1; + leave_signal_cs(); + PulseEvent(hIntr_Ack); break; case WAIT_OBJECT_0+1: /* hKill */ default: @@ -150,13 +153,17 @@ void ox_watch_intr() { ResetEvent(hOxIntr); if ( doing_batch ) send_intr(); + enter_signal_cs(); recv_intr = 1; + leave_signal_cs(); break; case WAIT_OBJECT_0+1: /* hOxReset */ ResetEvent(hOxReset); if ( doing_batch ) send_intr(); + enter_signal_cs(); recv_intr = 2; + leave_signal_cs(); break; case WAIT_OBJECT_0+2: /* hOxKill */ ResetEvent(hOxKill);