diff --git a/src/sbbs3/js_rtpool.c b/src/sbbs3/js_rtpool.c index c069cd20eaa8eeecbd4f28ffba332bcc6e244c9d..6de34fc2c4b3483da36b6d695fa970aef9ace0c7 100644 --- a/src/sbbs3/js_rtpool.c +++ b/src/sbbs3/js_rtpool.c @@ -32,10 +32,11 @@ JSRuntime * jsrt_GetNew(int maxbytes, unsigned long timeout, const char *filenam if(!initialized) { initialized=TRUE; pthread_mutex_init(&jsrt_mutex, NULL); + pthread_mutex_lock(&jsrt_mutex); listInit(&rt_list, 0); _beginthread(trigger_thread, TRIGGER_THREAD_STACK_SIZE, NULL); - } - pthread_mutex_lock(&jsrt_mutex); + } else + pthread_mutex_lock(&jsrt_mutex); ret=JS_NewRuntime(maxbytes); listPushNode(&rt_list, ret); pthread_mutex_unlock(&jsrt_mutex);