Mercurial > dovecot > core-2.2
changeset 9143:9336cf20a96c 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 | 7c8fa884cd37 |
children | 7c93e6c9cb0a |
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); }