diff --git a/src/sbbs3/sbbsexec.c b/src/sbbs3/sbbsexec.c index 6281cad425ade7d558380cfea6ba82de03cb12ee..2e8040a8e75b3bb938a5a4fc9822f7814db5833a 100644 --- a/src/sbbs3/sbbsexec.c +++ b/src/sbbs3/sbbsexec.c @@ -31,6 +31,7 @@ #include "ini_file.h" #include "git_branch.h" #include "git_hash.h" +#include "eventwrap.h" #define INI_FILENAME "sbbsexec.ini" #define RINGBUF_SIZE_IN 10000 @@ -287,7 +288,7 @@ unsigned vdd_read(BYTE* p, unsigned count) count=RingBufRead(&rdbuf,p,count); if(count==0) { lputs(LOG_ERR,"!VDD_READ: RingBufRead read 0, waiting"); - if(sem_trywait_block(&rdbuf.sem, READ_TIMEOUT) != 0) + if(WaitforEvent(rdbuf.data_event, READ_TIMEOUT) != WAIT_OBJECT_0) lputs(LOG_ERR,"!VDD_READ: rdbuf sem timeout"); count = RingBufRead(&rdbuf,p,count); lputs(LOG_ERR,"!VDD_READ: RingBufRead read 0 (after wait)"); diff --git a/src/sbbs3/xtrn.cpp b/src/sbbs3/xtrn.cpp index 70f651cdb80b27aecedab367a47fe7bae43380cc..4ab1ab900dc4425860253ef6f73c4080936e8a24 100644 --- a/src/sbbs3/xtrn.cpp +++ b/src/sbbs3/xtrn.cpp @@ -821,7 +821,7 @@ int sbbs_t::external(const char* cmdline, long mode, const char* startup_dir) if(!(startup->options&BBS_OPT_NO_TELNET_GA)) send_telnet_cmd(TELNET_GA,0); } - sem_trywait_block(&inbuf.sem,100); + WaitForEvent(inbuf.data, 100); } else loop_since_io=0; }