Переглянути джерело

- t_unref bug check relaxed (false positives)

Andrei Pelinescu-Onciul 18 роки тому
батько
коміт
5ac814a76c
1 змінених файлів з 2 додано та 1 видалено
  1. 2 1
      modules/tm/t_lookup.c

+ 2 - 1
modules/tm/t_lookup.c

@@ -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);