diff --git a/channels/chan_zap.c b/channels/chan_zap.c index 076ad18a1ba6159ddb30543dd3f276ef2b3100c9..d85e7102f30a1bcb0184c220e12443bf1a2c5a20 100755 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -8094,7 +8094,8 @@ static int __unload_module(void) #ifdef ZAPATA_PRI int i; for(i=0;i<NUM_SPANS;i++) { - pthread_cancel(pris[i].master); + if (pris[i].master != AST_PTHREADT_NULL) + pthread_cancel(pris[i].master); } ast_cli_unregister(&pri_debug); ast_cli_unregister(&pri_no_debug); @@ -8798,6 +8799,7 @@ int load_module(void) memset(pris, 0, sizeof(pris)); for (y=0;y<NUM_SPANS;y++) { pris[y].offset = -1; + pris[y].master = AST_PTHREADT_NULL; for (i=0;i<NUM_DCHANS;i++) pris[y].fds[i] = -1; }