summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main/taskprocessor.c7
-rw-r--r--main/threadpool.c2
2 files changed, 2 insertions, 7 deletions
diff --git a/main/taskprocessor.c b/main/taskprocessor.c
index 80875ec4a..1a768de2f 100644
--- a/main/taskprocessor.c
+++ b/main/taskprocessor.c
@@ -581,8 +581,6 @@ struct ast_taskprocessor *ast_taskprocessor_create_with_listener(const char *nam
/* decrement the taskprocessor reference count and unlink from the container if necessary */
void *ast_taskprocessor_unreference(struct ast_taskprocessor *tps)
{
- struct ast_taskprocessor_listener *listener;
-
if (!tps) {
return NULL;
}
@@ -596,10 +594,7 @@ void *ast_taskprocessor_unreference(struct ast_taskprocessor *tps)
* 3. The listener
*/
ao2_unlink(tps_singletons, tps);
- listener = tps->listener;
- tps->listener = NULL;
- listener_shutdown(listener);
- ao2_ref(listener, -1);
+ listener_shutdown(tps->listener);
return NULL;
}
diff --git a/main/threadpool.c b/main/threadpool.c
index 1b0477926..5ed9a42d1 100644
--- a/main/threadpool.c
+++ b/main/threadpool.c
@@ -784,7 +784,7 @@ static void worker_active(struct worker_thread *worker)
{
int alive = 1;
while (alive) {
- if (threadpool_execute(worker->pool)) {
+ if (threadpool_execute(worker->pool) == 0) {
alive = worker_idle(worker);
}
}