struct someEvent
{
int id;
struct someEvent *prev;
struct someEvent *next;
} * someEvent;
struct someEvent *someEventQueue = NULL;
int main(){
//There is some conditions. If passing all of conditions then It is inserted to someEventQueue.
struct someEvent **curr = &someEventQueue;
if ((*curr) != NULL)
{
while ((*curr) != NULL)
{
//After some processes, I want to delete (*curr)
if ((*curr)->prev == NULL && (*curr)->next == NULL)
{
//I don't know how to do this........................
}
if ((*curr)->prev != NULL)
{
(*curr)->next->prev = (*curr)->prev;
}
if ((*curr)->next != NULL)
{
(*curr)->prev->next = (*curr)->next;
}
curr = &(*curr)->next;
}
}
}
I want to delete node which is presenting in someEventQueue. someEventQueue is double-linked-list. I tried to make a deleting node code. But, I failed. I don't know why but it returns segmentation fault. How to solve this problem?