diff --git a/src/sbbs3/main.cpp b/src/sbbs3/main.cpp index ddba2095b9dbb6d0589eb062d9a6eab8a50c76d4..c9a3b2aafed7f945156138af8fba67c5dfe5befa 100644 --- a/src/sbbs3/main.cpp +++ b/src/sbbs3/main.cpp @@ -3178,6 +3178,7 @@ void event_thread(void* arg) node.status=NODE_EVENT_RUNNING; sbbs->putnodedat(sbbs->cfg.event[i]->node,&node); } + const char* cmd = sbbs->cfg.event[i]->cmd; int ex_mode = EX_OFFLINE; if(!(sbbs->cfg.event[i]->misc&EVENT_EXCL) && sbbs->cfg.event[i]->misc&EX_BG) @@ -3188,13 +3189,13 @@ void event_thread(void* arg) sbbs->online=ON_LOCAL; sbbs->console|=CON_L_ECHO; sbbs->lprintf(LOG_INFO,"Running %s%stimed event: %s" - ,(ex_mode&EX_NATIVE) ? "native ":"16-bit DOS " + ,native_executable(&sbbs->cfg, cmd, ex_mode) ? "native ":"16-bit DOS " ,(ex_mode&EX_BG) ? "background ":"" ,event_code); { int result= sbbs->external( - sbbs->cmdstr(sbbs->cfg.event[i]->cmd,nulstr,sbbs->cfg.event[i]->dir,NULL) + sbbs->cmdstr(cmd,nulstr,sbbs->cfg.event[i]->dir,NULL) ,ex_mode ,sbbs->cfg.event[i]->dir); if(!(ex_mode&EX_BG)) diff --git a/src/sbbs3/sbbs.h b/src/sbbs3/sbbs.h index 61cc7b49bebe8e649ab5bcc66e401f19f5caa595..aa6fd56e926e7922bc9983178fb8309e857031fd 100644 --- a/src/sbbs3/sbbs.h +++ b/src/sbbs3/sbbs.h @@ -1251,6 +1251,9 @@ extern "C" { /* con_out.cpp */ unsigned char cp437_to_petscii(unsigned char); + /* xtrn.cpp */ + bool native_executable(scfg_t*, const char* cmdline, long mode); + #ifdef JAVASCRIPT typedef struct { diff --git a/src/sbbs3/xtrn.cpp b/src/sbbs3/xtrn.cpp index e5a64d400f9bc8c34dab899de613aa9bff3a3409..c762d0bfb6e5ee43c195683e3b36f083122e2ce0 100644 --- a/src/sbbs3/xtrn.cpp +++ b/src/sbbs3/xtrn.cpp @@ -218,7 +218,7 @@ static void petscii_convert(BYTE* buf, ulong len) } } -static bool native_executable(scfg_t* cfg, const char* cmdline, long mode) +bool native_executable(scfg_t* cfg, const char* cmdline, long mode) { char* p; char str[MAX_PATH+1];