From: Travis Cross Date: Sat, 12 Apr 2014 04:30:19 +0000 (+0000) Subject: Fix memory leak in subscription handling X-Git-Tag: v1.5.12~196 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3f8cf4a59d7ae20261d2cd5967d75d7cc6c2569b;p=thirdparty%2Ffreeswitch.git Fix memory leak in subscription handling We were leaking one event (~539 bytes) for every subscribe packet received with both an "event: as-feature-event" and an authorization header. --- diff --git a/src/mod/endpoints/mod_sofia/sofia_presence.c b/src/mod/endpoints/mod_sofia/sofia_presence.c index 345ed0b1d3..0bb24b0e11 100644 --- a/src/mod/endpoints/mod_sofia/sofia_presence.c +++ b/src/mod/endpoints/mod_sofia/sofia_presence.c @@ -3735,6 +3735,7 @@ void sofia_presence_handle_sip_i_subscribe(int status, auth_res = sofia_reg_parse_auth(profile, authorization, sip, de, (char *) sip->sip_request->rq_method_name, key, sizeof(key), network_ip, network_port, &v_event, 0, REG_REGISTER, to_user, NULL, NULL, NULL); + if (v_event) switch_event_destroy(&v_event); } else if ( sofia_reg_handle_register(nua, profile, nh, sip, de, REG_REGISTER, key, sizeof(key), &v_event, NULL, NULL, NULL)) { if (v_event) { switch_event_destroy(&v_event);