diff options
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_acc.c')
-rw-r--r-- | pjsip/src/pjsua-lib/pjsua_acc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_acc.c b/pjsip/src/pjsua-lib/pjsua_acc.c index 77d8d2b3..ec226521 100644 --- a/pjsip/src/pjsua-lib/pjsua_acc.c +++ b/pjsip/src/pjsua-lib/pjsua_acc.c @@ -571,6 +571,7 @@ static pj_bool_t acc_check_nat_addr(pjsua_acc *acc, if (acc->regc != NULL) { pjsip_regc_destroy(acc->regc); acc->regc = NULL; + acc->contact.slen = 0; } /* Update account's Contact header */ @@ -859,6 +860,7 @@ static void regc_cb(struct pjsip_regc_cbparam *param) param->status); pjsip_regc_destroy(acc->regc); acc->regc = NULL; + acc->contact.slen = 0; /* Stop keep-alive timer if any. */ update_keep_alive(acc, PJ_FALSE, NULL); @@ -869,6 +871,7 @@ static void regc_cb(struct pjsip_regc_cbparam *param) (int)param->reason.slen, param->reason.ptr)); pjsip_regc_destroy(acc->regc); acc->regc = NULL; + acc->contact.slen = 0; /* Stop keep-alive timer if any. */ update_keep_alive(acc, PJ_FALSE, NULL); @@ -878,6 +881,7 @@ static void regc_cb(struct pjsip_regc_cbparam *param) if (param->expiration < 1) { pjsip_regc_destroy(acc->regc); acc->regc = NULL; + acc->contact.slen = 0; /* Stop keep-alive timer if any. */ update_keep_alive(acc, PJ_FALSE, NULL); @@ -946,6 +950,7 @@ static pj_status_t pjsua_regc_init(int acc_id) if (acc->regc) { pjsip_regc_destroy(acc->regc); acc->regc = NULL; + acc->contact.slen = 0; } /* initialize SIP registration if registrar is configured */ @@ -992,6 +997,7 @@ static pj_status_t pjsua_regc_init(int acc_id) pjsip_regc_destroy(acc->regc); pj_pool_release(pool); acc->regc = NULL; + acc->contact.slen = 0; return status; } |