Browse code

rx_aar: unreference dialog in case of aar update (#3104)

- release the dialog reference even for aar updates as the dialog was
already referenced when issuing the aar request

Co-authored-by: Atanas Bakalov <atanas@wgtwo.com>
(cherry picked from commit ab8cb43c83f8c9528e45a5b57fbb1440360f201e)

Atanas Bakalov authored on 30/05/2022 08:46:38 • Daniel-Constantin Mierla committed on 19/09/2022 06:22:50
Showing 1 changed files
... ...
@@ -177,6 +177,8 @@ void async_aar_callback(int is_timeout, void *param, AAAMessage *aaa, long elaps
177 177
             STR_SHM_DUP(*passed_rx_session_id, aaa->sessionId->data, "cb_passed_rx_session_id");
178 178
             LM_DBG("passed rx session id [%.*s]", passed_rx_session_id->len, passed_rx_session_id->s);
179 179
             dlgb.register_dlgcb_nodlg( data->dlg, DLGCB_TERMINATED | DLGCB_DESTROY | DLGCB_EXPIRED | DLGCB_RESPONSE_WITHIN | DLGCB_CONFIRMED | DLGCB_FAILED, callback_dialog, (void*) (passed_rx_session_id), free_dialog_data);
180
+        } else {
181
+            unref_dlg(data->dlg, 1);
180 182
         }
181 183
         result = CSCF_RETURN_TRUE;
182 184
     } else {