[sr-dev] git:alexh/dialog-sync-wip: dialog: Correctly detect and handle state in DLG_DMQ_UPDATE

Alex Hermann alex at speakup.nl
Thu Sep 4 13:21:34 CEST 2014


Module: sip-router
Branch: alexh/dialog-sync-wip
Commit: f42a9fbf0a1206c5e3ee0eadb591495526354ca5
URL:    http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=f42a9fbf0a1206c5e3ee0eadb591495526354ca5

Author: Alex Hermann <alex at speakup.nl>
Committer: Alex Hermann <alex at speakup.nl>
Date:   Tue Aug 26 16:28:29 2014 +0200

dialog: Correctly detect and handle state in DLG_DMQ_UPDATE

---

 modules/dialog/dlg_dmq.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/modules/dialog/dlg_dmq.c b/modules/dialog/dlg_dmq.c
index c8ea38c..3ea532e 100644
--- a/modules/dialog/dlg_dmq.c
+++ b/modules/dialog/dlg_dmq.c
@@ -97,7 +97,7 @@ int dlg_dmq_handle_msg(struct sip_msg* msg, peer_reponse_t* resp)
 	str profiles = {0, 0}, callid = {0, 0};
 	str dummy = {0, 0};
 	unsigned int init_ts = 0, start_ts = 0, lifetime = 0;
-	unsigned int state = 0;
+	unsigned int state = 1;
 
 	/* received dmq message */
 	LM_DBG("dmq message received\n");
@@ -194,8 +194,6 @@ int dlg_dmq_handle_msg(struct sip_msg* msg, peer_reponse_t* resp)
 				dlg->h_id = iuid.h_id;
 				/* prevent DB sync */
 				dlg->dflags &= ~(DLG_FLAG_NEW|DLG_FLAG_CHANGED);
-				dlg->init_ts = init_ts;
-				dlg->start_ts = start_ts;
 			} else {
 				/* remove existing profiles */
 				if (dlg->profile_links!=NULL) {
@@ -204,6 +202,9 @@ int dlg_dmq_handle_msg(struct sip_msg* msg, peer_reponse_t* resp)
 				}
 			}
 
+			dlg->init_ts = init_ts;
+			dlg->start_ts = start_ts;
+
 			/* add profiles */
 			if(profiles.s!=NULL) {
 				srjson_InitDoc(&prof_jdoc, NULL);




More information about the sr-dev mailing list