diff options
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_pres.c')
-rw-r--r-- | pjsip/src/pjsua-lib/pjsua_pres.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_pres.c b/pjsip/src/pjsua-lib/pjsua_pres.c index b3205cc5..78f913d1 100644 --- a/pjsip/src/pjsua-lib/pjsua_pres.c +++ b/pjsip/src/pjsua-lib/pjsua_pres.c @@ -978,6 +978,16 @@ static void subscribe_buddy_presence(unsigned index) return; } + status = pjsip_pres_create_uac( dlg, &pres_callback, + PJSIP_EVSUB_NO_EVENT_ID, &buddy->sub); + if (status != PJ_SUCCESS) { + pjsua_var.buddy[index].sub = NULL; + pjsua_perror(THIS_FILE, "Unable to create presence client", + status); + pjsip_dlg_terminate(dlg); + return; + } + /* Set route-set */ if (!pj_list_empty(&acc->route_set)) { pjsip_dlg_set_route_set(dlg, &acc->route_set); @@ -989,16 +999,6 @@ static void subscribe_buddy_presence(unsigned index) acc->cred_cnt, acc->cred); } - status = pjsip_pres_create_uac( dlg, &pres_callback, - PJSIP_EVSUB_NO_EVENT_ID, &buddy->sub); - if (status != PJ_SUCCESS) { - pjsua_var.buddy[index].sub = NULL; - pjsua_perror(THIS_FILE, "Unable to create presence client", - status); - pjsip_dlg_terminate(dlg); - return; - } - pjsip_evsub_set_mod_data(buddy->sub, pjsua_var.mod.id, buddy); status = pjsip_pres_initiate(buddy->sub, -1, &tdata); |