summaryrefslogtreecommitdiff
path: root/pjsip/src/pjsua-lib/pjsua_pres.c
diff options
context:
space:
mode:
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_pres.c')
-rw-r--r--pjsip/src/pjsua-lib/pjsua_pres.c20
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);