- silc_hash_table_list(parent->events, &htl);
- while (silc_hash_table_get(&htl, NULL, (void *)&etask)) {
- silc_hash_table_del_by_context(parent->events, etask->event, etask);
- silc_free(etask->event);
- silc_free(etask);
+ if (parent->events) {
+ silc_hash_table_list(parent->events, &htl);
+ while (silc_hash_table_get(&htl, NULL, (void *)&etask)) {
+ silc_hash_table_del_by_context(parent->events, etask->event, etask);
+ silc_free(etask->event);
+ silc_free(etask);
+ }
+ silc_hash_table_list_reset(&htl);