From a4caaef64c81eaa3b7e8e78ac491d88da61a74e2 Mon Sep 17 00:00:00 2001 From: Kevin Harwell Date: Mon, 23 Sep 2019 11:01:36 -0500 Subject: [PATCH] res_sorcery_memory_cache: stale item update leak When a stale item was being updated the object was being retrieved, but its reference was not being decremented after the update. This patch makes it so the object is now appropriately de-referenced. ASTERISK-28523 Change-Id: I9d8173d3a0416a242f4eba92fa0853279c500ec7 --- res/res_sorcery_memory_cache.c | 1 + 1 file changed, 1 insertion(+) diff --git a/res/res_sorcery_memory_cache.c b/res/res_sorcery_memory_cache.c index 42da7273d3..5029131ca5 100644 --- a/res/res_sorcery_memory_cache.c +++ b/res/res_sorcery_memory_cache.c @@ -1006,6 +1006,7 @@ static int stale_item_update(const void *data) ast_sorcery_object_get_id(task_data->object)); sorcery_memory_cache_create(task_data->sorcery, task_data->cache, object); + ao2_ref(object, -1); } ast_test_suite_event_notify("SORCERY_MEMORY_CACHE_REFRESHED", "Cache: %s\r\nType: %s\r\nName: %s\r\n", -- 2.47.2