On our solaris systems we quite often sees dovecot coredump on exit when trying to free a null buffer. After including if (array->buffer == NULL) return; in array_free() in array.h these coredums have been avoided. hmk