Browse Source

tm: t_suspend() skip suspending if a final response was sent out for transaction already

Daniel-Constantin Mierla 10 years ago
parent
commit
92c376dbeb
1 changed files with 5 additions and 0 deletions
  1. 5 0
      modules/tm/t_suspend.c

+ 5 - 0
modules/tm/t_suspend.c

@@ -74,6 +74,11 @@ int t_suspend(struct sip_msg *msg,
 		ser_error = E_CANCELED;
 		return 1;
 	}
+	if (t->uas.status >= 200) {
+		LM_DBG("trasaction sent out a final response already - %d\n",
+				t->uas.status);
+		return -3;
+	}
 
 	if (msg->first_line.type != SIP_REPLY) {
 		/* send a 100 Trying reply, because the INVITE processing