From b77518685cffcf59a4a26ae3bcde9b0d7a5cb75b Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Mon, 13 Sep 2010 15:27:10 -0500 Subject: [PATCH] make fore-subscription-expires only work on nonzero expire deltas, 0 means unscubscribe --- src/mod/endpoints/mod_sofia/sofia_presence.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mod/endpoints/mod_sofia/sofia_presence.c b/src/mod/endpoints/mod_sofia/sofia_presence.c index f88920294c..5eb71b37e9 100644 --- a/src/mod/endpoints/mod_sofia/sofia_presence.c +++ b/src/mod/endpoints/mod_sofia/sofia_presence.c @@ -2043,7 +2043,11 @@ void sofia_presence_handle_sip_i_subscribe(int status, from_host = "n/a"; } - exp_delta = profile->force_subscription_expires ? profile->force_subscription_expires : (sip->sip_expires ? sip->sip_expires->ex_delta : 3600); + if ((exp_delta = sip->sip_expires ? sip->sip_expires->ex_delta : 3600)) { + if (profile->force_subscription_expires) { + exp_delta = profile->force_subscription_expires; + } + } if (exp_delta) { exp_abs = (long) switch_epoch_time_now(NULL) + exp_delta;