X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilcutil%2Fwin32%2Fsilcwin32thread.c;h=7d5c62d2f7dde3784e1cbd6911c3f78dd0cb2d05;hb=d1e71f42379e8b5cd0748a7aeae8561b02cfe53d;hp=ca2a211207c9baf3feec507151d2eb5f4d99a63d;hpb=34bb35a2496ec0402bb4d6c2546147cd37b27007;p=crypto.git diff --git a/lib/silcutil/win32/silcwin32thread.c b/lib/silcutil/win32/silcwin32thread.c index ca2a2112..7d5c62d2 100644 --- a/lib/silcutil/win32/silcwin32thread.c +++ b/lib/silcutil/win32/silcwin32thread.c @@ -4,12 +4,11 @@ Author: Pekka Riikonen - Copyright (C) 2001 Pekka Riikonen + Copyright (C) 2001 - 2005 Pekka Riikonen This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. + the Free Software Foundation; version 2 of the License. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -61,7 +60,9 @@ SilcThread silc_thread_create(SilcThreadStart start_func, void *context, thread->start_func = start_func; thread->context = context; thread->waitable = waitable; - thread->thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)silc_thread_win32_start, (void *)thread, 0, &id); + thread->thread = + CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)silc_thread_win32_start, + (void *)thread, 0, &id); if (!thread->thread) { SILC_LOG_ERROR(("Could not create new thread")); @@ -113,7 +114,7 @@ SilcThread silc_thread_self(void) } return (SilcThread)self; -#else + #else return NULL; #endif } @@ -130,9 +131,7 @@ bool silc_thread_wait(SilcThread thread, void **exit_value) /* The thread is waitable thus we will free all memory after the WaitForSingleObject returns, the thread is destroyed after that. */ - - /* 2 sec timeout, otherwise we would run to infinite loop some cases.. */ - if (WaitForSingleObject(self->thread, 2000) == WAIT_TIMEOUT) + if (WaitForSingleObject(self->thread, 2500) == WAIT_TIMEOUT) TerminateThread(self->thread, 0); silc_free(self);