Module: kamailio
Branch: master
Commit: 0ee3dc5e3edc49cf62f97ddd87a40b12c59b73ff
URL:
https://github.com/kamailio/kamailio/commit/0ee3dc5e3edc49cf62f97ddd87a40b1…
Author: jaybeepee <jason.penton(a)gmail.com>
Committer: jaybeepee <jason.penton(a)gmail.com>
Date: 2015-03-20T13:29:34+02:00
modules/tm: restore code to set blind uac branch last_reply > 200
---
Modified: modules/tm/t_suspend.c
---
Diff:
https://github.com/kamailio/kamailio/commit/0ee3dc5e3edc49cf62f97ddd87a40b1…
Patch:
https://github.com/kamailio/kamailio/commit/0ee3dc5e3edc49cf62f97ddd87a40b1…
---
diff --git a/modules/tm/t_suspend.c b/modules/tm/t_suspend.c
index 4abfe72..cc4dd61 100644
--- a/modules/tm/t_suspend.c
+++ b/modules/tm/t_suspend.c
@@ -215,10 +215,15 @@ int t_continue(unsigned int hash_index, unsigned int label,
return 1;
}
- /*we really don't need this next line anymore otherwise we will
- never be able to forward replies after a (t_relay) on this branch.
- We want to try and treat this branch as 'normal' (as if it were a normal req,
not async)' */
- //t->uac[branch].last_received=500;
+ /* Set last_received to something >= 200,
++ * the actual value does not matter, the branch
++ * will never be picked up for response forwarding.
++ * If last_received is lower than 200,
++ * then the branch may tried to be cancelled later,
++ * for example when t_reply() is called from
++ * a failure route => deadlock, because both
++ * of them need the reply lock to be held. */
+ t->uac[branch].last_received=500;
uac = &t->uac[branch];
}
/* else