[dovecot-cvs] dovecot/src/lib-index mail-index-sync-update.c, 1.64, 1.65

cras at dovecot.org cras at dovecot.org
Mon Nov 29 03:15:51 EET 2004


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

Modified Files:
	mail-index-sync-update.c 
Log Message:
We were accessing map which was potentially already freed.



Index: mail-index-sync-update.c
===================================================================
RCS file: /var/lib/cvs/dovecot/src/lib-index/mail-index-sync-update.c,v
retrieving revision 1.64
retrieving revision 1.65
diff -u -d -r1.64 -r1.65
--- mail-index-sync-update.c	29 Nov 2004 00:48:45 -0000	1.64
+++ mail-index-sync-update.c	29 Nov 2004 01:15:49 -0000	1.65
@@ -1113,7 +1113,7 @@
 			mail_transaction_log_view_get_prev_pos(view->log_view,
 							       &prev_seq,
 							       &prev_offset);
-			if (prev_offset < map->hdr.log_file_ext_offset) {
+			if (prev_offset < view->map->hdr.log_file_ext_offset) {
 				/* we have already synced this change */
 				continue;
 			}
@@ -1144,6 +1144,10 @@
 			ret = -1;
 			break;
 		}
+
+		/* mail_index_sync_record() might have changed map to anything.
+		   make sure we don't accidentally try to use it. */
+		map = NULL;
 	}
 	map = view->map;
         mail_index_sync_map_deinit(&sync_map_ctx);



More information about the dovecot-cvs mailing list