aboutsummaryrefslogtreecommitdiffstats
path: root/channels
diff options
context:
space:
mode:
authorphsultan <phsultan@f38db490-d61c-443f-a65b-d21fe96a405b>2008-08-21 09:55:31 +0000
committerphsultan <phsultan@f38db490-d61c-443f-a65b-d21fe96a405b>2008-08-21 09:55:31 +0000
commitd312de7732d3c25b0c15adf2d5e4ef7203cb8341 (patch)
treef4e8ba06e4d85462391d2d08ed3bf9f2e93e9b0f /channels
parent31d09879fe1f52d7b437d60a4a59cbd86c79c7fb (diff)
Fix two memory leaks in chan_gtalk, thanks Eliel!
(closes issue #13310) Reported by: eliel Patches: chan_gtalk.c.patch uploaded by eliel (license 64) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@139281 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_gtalk.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/channels/chan_gtalk.c b/channels/chan_gtalk.c
index d42afaff7..76b4f9ad1 100644
--- a/channels/chan_gtalk.c
+++ b/channels/chan_gtalk.c
@@ -1619,6 +1619,7 @@ static struct ast_channel *gtalk_request(const char *type, int format, void *dat
client->connection = ast_aji_get_client(sender);
if (!client->connection) {
ast_log(LOG_ERROR, "No XMPP client to talk to, us (partial JID) : %s\n", sender);
+ ASTOBJ_UNREF(client, gtalk_member_destroy);
return NULL;
}
}
@@ -1960,6 +1961,7 @@ static int gtalk_load_config(void)
ASTOBJ_UNLOCK(iterator);
});
ASTOBJ_CONTAINER_LINK(&gtalk_list, member);
+ ASTOBJ_UNREF(member, gtalk_member_destroy);
} else {
ASTOBJ_UNLOCK(member);
ASTOBJ_UNREF(member, gtalk_member_destroy);