|
@@ -1353,7 +1353,8 @@ int t_unref( struct sip_msg* p_msg )
|
|
|
!(kr & REQ_RLSD)))) {
|
|
|
LOG(L_WARN, "WARNING: script writer didn't release transaction\n");
|
|
|
t_release_transaction(T);
|
|
|
- }else if (unlikely((kr & REQ_ERR_DELAYED))){
|
|
|
+ }else if (unlikely((kr & REQ_ERR_DELAYED) &&
|
|
|
+ (kr & ~(REQ_RLSD|REQ_RPLD|REQ_ERR_DELAYED)))){
|
|
|
BUG("tm: t_unref: REQ_ERR DELAYED should have been caught much"
|
|
|
" earlier for %p: %d (hex %x)\n",T, kr, kr);
|
|
|
t_release_transaction(T);
|