=================================================================== RCS file: /home/cvs/OpenXM_contrib2/windows/engine2000/io.c,v retrieving revision 1.8 retrieving revision 1.11 diff -u -p -r1.8 -r1.11 --- OpenXM_contrib2/windows/engine2000/io.c 2013/11/29 08:21:29 1.8 +++ OpenXM_contrib2/windows/engine2000/io.c 2018/09/08 02:15:31 1.11 @@ -124,7 +124,9 @@ 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 */ @@ -151,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); @@ -328,7 +334,9 @@ extern int wfep_mode; void Init_IO() { +#if _MSC_VER < 1910 _setargv(); +#endif if ( !strncmp(__argv[0],"ox_asir",strlen("ox_asir")) ) { /* ox_asir or ox_asir_wfep */ if ( !strcmp(__argv[0],"ox_asir_wfep") ) wfep_mode = 1;