mail-index-sync-ext.c (dovecot-2.3.16) | : | mail-index-sync-ext.c (dovecot-2.3.17) | ||
---|---|---|---|---|
skipping to change at line 462 | skipping to change at line 462 | |||
/* default to ignoring the following extension updates in case this | /* default to ignoring the following extension updates in case this | |||
intro is corrupted */ | intro is corrupted */ | |||
ctx->cur_ext_map_idx = (uint32_t)-2; | ctx->cur_ext_map_idx = (uint32_t)-2; | |||
ctx->cur_ext_ignore = TRUE; | ctx->cur_ext_ignore = TRUE; | |||
ctx->cur_ext_record_size = 0; | ctx->cur_ext_record_size = 0; | |||
if (u->ext_id != (uint32_t)-1 && | if (u->ext_id != (uint32_t)-1 && | |||
(!array_is_created(&map->extensions) || | (!array_is_created(&map->extensions) || | |||
u->ext_id >= array_count(&map->extensions))) { | u->ext_id >= array_count(&map->extensions))) { | |||
/* The extension ID is unknown in this map. */ | ||||
if (map->hdr.log_file_seq == 0) { | ||||
/* This map was generated by | ||||
view_sync_get_log_lost_changes(). There's no need to | ||||
update any extensions, because they won't be used | ||||
anyway. Any extension lookups will be accessed via | ||||
the latest index map. */ | ||||
i_assert(map->rec_map != ctx->view->index->map->rec_map); | ||||
return 1; | ||||
} | ||||
if (!mail_index_sync_ext_unknown_complain(ctx, u->ext_id)) | if (!mail_index_sync_ext_unknown_complain(ctx, u->ext_id)) | |||
return -1; | return -1; | |||
mail_index_sync_set_corrupted(ctx, | mail_index_sync_set_corrupted(ctx, | |||
"Extension introduction for unknown id %u", u->ext_id); | "Extension introduction for unknown id %u", u->ext_id); | |||
return -1; | return -1; | |||
} | } | |||
if (u->ext_id == (uint32_t)-1 && u->name_size == 0) { | if (u->ext_id == (uint32_t)-1 && u->name_size == 0) { | |||
mail_index_sync_set_corrupted(ctx, | mail_index_sync_set_corrupted(ctx, | |||
"Extension introduction without id or name"); | "Extension introduction without id or name"); | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 10 lines changed or added |