[dovecot-cvs] dovecot/src/lib-index mail-index-sync-update.c, 1.62, 1.63

cras at dovecot.org cras at dovecot.org
Mon Nov 29 02:23:38 EET 2004


Update of /var/lib/cvs/dovecot/src/lib-index
In directory talvi:/tmp/cvs-serv9628/lib-index

Modified Files:
	mail-index-sync-update.c 
Log Message:
Don't mark map to be written into disk if we're syncing a view and not
index.



Index: mail-index-sync-update.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib-index/mail-index-sync-update.c,v
retrieving revision 1.62
retrieving revision 1.63
diff -u -d -r1.62 -r1.63
--- mail-index-sync-update.c	28 Nov 2004 23:43:23 -0000	1.62
+++ mail-index-sync-update.c	29 Nov 2004 00:23:35 -0000	1.63
@@ -12,16 +12,19 @@
 
 #include <stdlib.h>
 
-static void mail_index_sync_replace_map(struct mail_index_view *view,
+static void mail_index_sync_replace_map(struct mail_index_sync_map_ctx *ctx,
 					struct mail_index_map *map)
 {
+        struct mail_index_view *view = ctx->view;
 	mail_index_unmap(view->index, view->map);
 	view->map = map;
 	view->map->refcount++;
 	mail_index_unmap(view->index, view->index->map);
 	view->index->map = map;
 	view->index->hdr = &map->hdr;
-	map->write_to_disk = TRUE;
+
+	if (ctx->type == MAIL_INDEX_SYNC_HANDLER_INDEX)
+		map->write_to_disk = TRUE;
 }
 
 static void
@@ -202,7 +205,7 @@
 		   I/O we copy the index into memory rather than to
 		   temporary file */
 		map = mail_index_map_to_memory(map, map->hdr.record_size);
-		mail_index_sync_replace_map(view, map);
+		mail_index_sync_replace_map(ctx, map);
 	}
 	i_assert(MAIL_INDEX_MAP_IS_IN_MEMORY(map));
 
@@ -576,7 +579,7 @@
 
 	if (old_record_size != u->record_size) {
 		map = sync_ext_reorder(map, ext_id, old_record_size);
-		mail_index_sync_replace_map(ctx->view, map);
+		mail_index_sync_replace_map(ctx, map);
 	}
 }
 
@@ -679,7 +682,7 @@
         mail_index_sync_init_handlers(ctx);
 
 	map = sync_ext_reorder(map, ext_id, 0);
-	mail_index_sync_replace_map(ctx->view, map);
+	mail_index_sync_replace_map(ctx, map);
 
 	ctx->cur_ext_ignore = FALSE;
 	ctx->cur_ext_id = ext_id;



More information about the dovecot-cvs mailing list