Mercurial > dovecot > original-hg > dovecot-1.2
changeset 8972:9ab0177cd004 HEAD
array_idx_clear() was broken when clearing an index outside the existing array.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 20 Apr 2009 14:43:15 -0400 |
parents | 163c3f85a3aa |
children | 796149c5f3f0 |
files | src/lib/array.c |
diffstat | 1 files changed, 2 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib/array.c Mon Apr 20 13:28:00 2009 -0400 +++ b/src/lib/array.c Mon Apr 20 14:43:15 2009 -0400 @@ -35,7 +35,8 @@ pos = idx * array->element_size; if (pos > array->buffer->used) { /* index doesn't exist yet, initialize with zero */ - buffer_append_zero(array->buffer, pos - array->buffer->used); + buffer_append_zero(array->buffer, pos - array->buffer->used + + array->element_size); } else { buffer_write_zero(array->buffer, pos, array->element_size); }