switch(event->type) {
case IOEVENT_TIMEOUT:
entry->callback(entry->data);
+ entry->iofd = NULL;
timeq_del(entry);
break;
default:
entry->name = NULL;
entry->next = timeq_events;
entry->prev = NULL;
- timeq_events->prev = entry;
+ if(timeq_events)
+ timeq_events->prev = entry;
timeq_events = entry;
DESYNCHRONIZE(synchronized);
return entry;
timeq_events = entry->next;
if(entry->name)
free(entry->name);
- iohandler_close(entry->iofd);
+ if(entry->iofd)
+ iohandler_close(entry->iofd);
free(entry);
DESYNCHRONIZE(synchronized);
return 1;