mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
Ensure the timer heap is protected by a lock.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@369524 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -3741,6 +3741,8 @@ static int reload_module(void)
|
||||
|
||||
static int load_module(void)
|
||||
{
|
||||
pj_lock_t *lock;
|
||||
|
||||
pj_log_set_level(0);
|
||||
|
||||
if (pj_init() != PJ_SUCCESS) {
|
||||
@@ -3767,6 +3769,14 @@ static int load_module(void)
|
||||
return AST_MODULE_LOAD_DECLINE;
|
||||
}
|
||||
|
||||
if (pj_lock_create_recursive_mutex(pool, "rtp%p", &lock) != PJ_SUCCESS) {
|
||||
pj_caching_pool_destroy(&cachingpool);
|
||||
pj_shutdown();
|
||||
return AST_MODULE_LOAD_DECLINE;
|
||||
}
|
||||
|
||||
pj_timer_heap_set_lock(timerheap, lock, PJ_TRUE);
|
||||
|
||||
if (pj_ioqueue_create(pool, 16, &ioqueue) != PJ_SUCCESS) {
|
||||
pj_caching_pool_destroy(&cachingpool);
|
||||
pj_shutdown();
|
||||
|
Reference in New Issue
Block a user