diff options
author | Nanang Izzuddin <nanang@teluu.com> | 2011-10-25 12:14:12 +0000 |
---|---|---|
committer | Nanang Izzuddin <nanang@teluu.com> | 2011-10-25 12:14:12 +0000 |
commit | 7670782f12da1065083caa6b216a2017ad87aa33 (patch) | |
tree | 39ca3eb7ff66289c5612b7007680905612089ab3 /pjlib/src/pj/os_core_win32.c | |
parent | a77ba02553b155a261e63a26eed3ec1ab16de64b (diff) |
Re #1394: Ignore thread join if called from the same thread, it will cause the thread blocks forever.
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3855 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjlib/src/pj/os_core_win32.c')
-rw-r--r-- | pjlib/src/pj/os_core_win32.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/pjlib/src/pj/os_core_win32.c b/pjlib/src/pj/os_core_win32.c index 866afb99..30992a4f 100644 --- a/pjlib/src/pj/os_core_win32.c +++ b/pjlib/src/pj/os_core_win32.c @@ -559,6 +559,9 @@ PJ_DEF(pj_status_t) pj_thread_join(pj_thread_t *p) PJ_CHECK_STACK(); PJ_ASSERT_RETURN(p, PJ_EINVAL); + if (p == pj_thread_this()) + return PJ_ECANCELLED; + PJ_LOG(6, (pj_thread_this()->obj_name, "Joining thread %s", p->obj_name)); rc = WaitForSingleObject(rec->hthread, INFINITE); |