From: Anthony Minessale Date: Tue, 21 Feb 2012 21:33:37 +0000 (-0600) Subject: FS-3794 I think I got to the bottom of the thing you hit with intercept, please updat... X-Git-Tag: v1.2-rc1~19^2^2~68^2~73 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b0de882aeeeff65fb4aa2f31f6c28e379d2dd8e2;p=thirdparty%2Ffreeswitch.git FS-3794 I think I got to the bottom of the thing you hit with intercept, please update to this version --- diff --git a/src/mod/endpoints/mod_sofia/sofia_presence.c b/src/mod/endpoints/mod_sofia/sofia_presence.c index 0bb119f8d3..1a949044da 100644 --- a/src/mod/endpoints/mod_sofia/sofia_presence.c +++ b/src/mod/endpoints/mod_sofia/sofia_presence.c @@ -2487,9 +2487,12 @@ static int sofia_presence_sub_callback(void *pArg, int argc, char **argv, char * "\n", version, default_dialog, clean_id); - } + if (!strcasecmp(astate, "hangup")) { + astate = "terminated"; + } + if (!zstr(uuid)) { if (!zstr(answer_state)) { astate = answer_state; @@ -2507,9 +2510,6 @@ static int sofia_presence_sub_callback(void *pArg, int argc, char **argv, char * astate = "confirmed"; } - if (!strcasecmp(astate, "hangup")) { - astate = "terminated"; - } if (is_dialog) { @@ -2629,7 +2629,7 @@ static int sofia_presence_sub_callback(void *pArg, int argc, char **argv, char * if (in) { open = "open"; - if (switch_false(resub)) { + if (!strcasecmp(astate, "terminated") && switch_false(resub)) { int term; const char *direction = switch_event_get_header(helper->event, "Caller-Direction");