diff --git a/src/modules/ims_usrloc_scscf/impurecord.c b/src/modules/ims_usrloc_scscf/impurecord.c index 6510d85aa19..20c8a64154e 100644 --- a/src/modules/ims_usrloc_scscf/impurecord.c +++ b/src/modules/ims_usrloc_scscf/impurecord.c @@ -1102,10 +1102,11 @@ int remove_impucontact_from_list(impurecord_t* impu, impu_contact_t *impucontact } else if (contact == impu->linked_contacts.tail->contact) { LM_DBG("deleting tail\n"); impu->linked_contacts.tail = impu->linked_contacts.tail->prev; + impu->linked_contacts.tail->next = 0; } else { LM_DBG("deleting mid list\n"); impucontact->prev->next = impucontact->next; - impucontact->prev = impucontact->next->prev; + impucontact->next->prev = impucontact->prev; } impu->linked_contacts.numcontacts--;