ext->hdr_size = u->hdr_size;
modified = TRUE;
}
- map->hdr_base = map->hdr_copy_buf->data;
if (ext->record_align < u->record_align ||
(ext->record_align > u->record_align && !no_shrink)) {
ext_hdr->record_offset = ext->record_offset;
ext_hdr->record_size = ext->record_size;
ext_hdr->record_align = ext->record_align;
+ } else {
+ i_assert(map->hdr_base == map->hdr_copy_buf->data);
}
if (new_size != old_size) {
buffer_set_used_size(mstream->hdr_buf, mstream->istream.pos);
if (mstream->header_read) {
+ i_assert(mstream->istream.skip == 0);
highwater_offset = mstream->istream.istream.v_offset +
- (mstream->istream.pos - mstream->istream.skip);
+ mstream->istream.pos;
if (highwater_offset >= mstream->header_size.virtual_size) {
/* we want to return mixed headers and body */
size_t body_highwater_size = highwater_offset -
static void acl_backend_vfile_cache_rebuild(struct acl_object_vfile *aclobj)
{
- struct mail_namespace *ns;
struct acl_object *_aclobj = &aclobj->aclobj;
struct acl_rights_update ru;
enum acl_modify_mode add_mode;
if (!array_is_created(&aclobj->rights))
return;
- ns = mailbox_list_get_namespace(_aclobj->backend->list);
-
/* Rights are sorted by their 1) locals first, globals next,
2) acl_id_type. We'll apply only the rights matching ourself.