Mercurial > dovecot > original-hg > dovecot-1.2
changeset 2992:3c192eebd919 HEAD
Don't crash if last extension in record needs padding.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sun, 19 Dec 2004 03:53:30 +0200 |
parents | ca4341dbde8a |
children | 2c92a14458e6 |
files | src/lib-index/mail-index-sync-ext.c |
diffstat | 1 files changed, 4 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-index/mail-index-sync-ext.c Sun Dec 19 02:46:10 2004 +0200 +++ b/src/lib-index/mail-index-sync-ext.c Sun Dec 19 03:53:30 2004 +0200 @@ -245,11 +245,10 @@ if (new_map->buffer->used != old_records_count * new_map->hdr.record_size) { /* we didn't fully write the last record */ - i_assert(new_map->buffer->used == - old_records_count * new_map->hdr.record_size - - (ext[ext_id].record_size - old_size)); - buffer_append_zero(new_map->buffer, - ext[ext_id].record_size - old_size); + size_t space = old_records_count * new_map->hdr.record_size - + new_map->buffer->used; + i_assert(space < new_map->hdr.record_size); + buffer_append_zero(new_map->buffer, space); } new_map->records = buffer_get_modifyable_data(new_map->buffer, NULL);