diff options
Diffstat (limited to 'channels/chan_h323.c')
-rw-r--r-- | channels/chan_h323.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/channels/chan_h323.c b/channels/chan_h323.c index 7bb923811..c2aaa2a6c 100644 --- a/channels/chan_h323.c +++ b/channels/chan_h323.c @@ -3316,11 +3316,12 @@ static int unload_module(void) } if (!ast_mutex_lock(&monlock)) { if ((monitor_thread != AST_PTHREADT_STOP) && (monitor_thread != AST_PTHREADT_NULL)) { - /* this causes a seg, anyone know why? */ - if (monitor_thread != pthread_self()) + if (monitor_thread != pthread_self()) { pthread_cancel(monitor_thread); + } pthread_kill(monitor_thread, SIGURG); - pthread_join(monitor_thread, NULL); + /* Cannot join detached threads */ + /* pthread_join(monitor_thread, NULL); */ } monitor_thread = AST_PTHREADT_STOP; ast_mutex_unlock(&monlock); |