From 58d18324f05b9ec2b12096cfc6934693cf688eaa Mon Sep 17 00:00:00 2001 From: Mark Michelson Date: Mon, 29 Jun 2015 12:45:02 -0500 Subject: [PATCH] res_sorcery_realtime: Fix leak of sorcery object type. This prevents a leak of a sorcery object type when realtime sorcery objects are retrieved by fields or when multiple objects are retrieved. The extent of this leak is that sorcery object types would be leaked. These are allocated whenever an object type is registered with sorcery, meaning that on module shutdown, these objects would be leaked. This could be problematic if many reloads were performed, but it is not as severe as if every sorcery object retrieved from realtime were being leaked. ASTERISK-25165 #close Reported by Corey Farrell Change-Id: I625c3b50eee4576670b7eeb013c81ad043b4b4f8 --- res/res_sorcery_realtime.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/res/res_sorcery_realtime.c b/res/res_sorcery_realtime.c index 65eb4b88e3..b2df298149 100644 --- a/res/res_sorcery_realtime.c +++ b/res/res_sorcery_realtime.c @@ -142,6 +142,8 @@ static struct ast_variable *sorcery_realtime_filter_objectset(struct ast_variabl } } + ao2_ref(object_type, -1); + return objectset; }