/* If we haven't seen anything yet, allocate result structure. */
if (current == NULL)
{
- current = (struct catalog *) xmalloc (sizeof (*current));
-
- current->all_sets = NULL;
- current->total_messages = 0;
- current->last_set = 0;
- current->current_set = find_set (current, NL_SETD);
+ current = (struct catalog *) xcalloc (1, sizeof (*current));
#define obstack_chunk_alloc malloc
#define obstack_chunk_free free
obstack_init (¤t->mem_pool);
+
+ current->current_set = find_set (current, NL_SETD);
}
buf = NULL;
result = result->next;
/* Prepare new message set. */
- result = (struct set_list *) xmalloc (sizeof (*result));
+ result = (struct set_list *) xcalloc (1, sizeof (*result));
result->number = number;
- result->deleted = 0;
- result->messages = NULL;
result->next = current->all_sets;
current->all_sets = result;