nua_event_t event;
int error = 0;
- assert(tags);
-
if (nh) {
if (!nh->nh_prev)
nh_append(nua, nh);
SIPTAG_FROM(from), /* Remote AoR */
TAG_END());
- if (nua_stack_init_handle(nh->nh_nua, nh, NULL) < 0)
+ if (nh && nua_stack_init_handle(nua, nh, NULL) < 0)
nh_destroy(nua, nh), nh = NULL;
if (nh && create_dialog) {
int terminated;
int handle_can_be_terminated = initial && !sr->sr_event;
- assert(nh);
-
if (sr->sr_application) {
/* There was an error sending response */
if (sr->sr_application != sr->sr_status)
char const *phrase,
sip_t const *sip)
{
- nua_handle_t *nh = cr->cr_owner;
+ nua_handle_t *nh;
assert(cr && status >= 200 && phrase && sip);
+ nh = cr->cr_owner;
+
if (cr->cr_retry_count > NH_PGET(nh, retry_count))
return 0;