[dovecot-cvs] dovecot/src/lib-storage/index index-mail-headers.c,1.11,1.12 index-mail.c,1.22,1.23 index-search.c,1.79,1.80

cras at procontrol.fi cras at procontrol.fi
Sun Sep 21 20:21:40 EEST 2003


Update of /home/cvs/dovecot/src/lib-storage/index
In directory danu:/tmp/cvs-serv17131/lib-storage/index

Modified Files:
	index-mail-headers.c index-mail.c index-search.c 
Log Message:
data_stack_pool split into two: unsafe_data_stack_pool which works like
before, and a new one which verifies that stack frame stays the same
whenever the pool is accessed.



Index: index-mail-headers.c
===================================================================
RCS file: /home/cvs/dovecot/src/lib-storage/index/index-mail-headers.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- index-mail-headers.c	10 Sep 2003 02:16:30 -0000	1.11
+++ index-mail-headers.c	21 Sep 2003 16:21:38 -0000	1.12
@@ -120,7 +120,8 @@
 	int i, already_sorted;
 
 	/* copy the wanted_headers array */
-	buffer = buffer_create_dynamic(data_stack_pool, 256, (size_t)-1);
+	buffer = buffer_create_dynamic(pool_datastack_create(),
+				       256, (size_t)-1);
 	already_sorted = TRUE;
 	for (i = 0; arr[i] != NULL; i++) {
 		if (i > 0 && already_sorted &&
@@ -203,7 +204,8 @@
 	data = buffer_get_modifyable_data(mail->data.headers, &size);
 	size /= sizeof(struct cached_header *);
 
-	buffer = buffer_create_dynamic(data_stack_pool, 128, (size_t)-1);
+	buffer = buffer_create_dynamic(pool_datastack_create(),
+				       128, (size_t)-1);
 	for (i = 0; i < size; i++)
 		buffer_append(buffer, &data[i]->name, sizeof(const char *));
 	buffer_append(buffer, &null, sizeof(const char *));
@@ -423,7 +425,7 @@
 	t_push();
 	if (idx < data->header_data_cached) {
 		/* it's already in header_data. */
-		istream = i_stream_create_from_data(data_stack_pool,
+		istream = i_stream_create_from_data(pool_datastack_create(),
 						    str_data(data->header_data),
 						    str_len(data->header_data));
 		/* we might be parsing a bit more.. */
@@ -440,7 +442,7 @@
 		}
 
 		data->header_data_cached_partial = TRUE;
-		istream = i_stream_create_from_data(data_stack_pool,
+		istream = i_stream_create_from_data(pool_datastack_create(),
 						    str, strlen(str));
 	}
 

Index: index-mail.c
===================================================================
RCS file: /home/cvs/dovecot/src/lib-storage/index/index-mail.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -d -r1.22 -r1.23
--- index-mail.c	24 Aug 2003 07:03:22 -0000	1.22
+++ index-mail.c	21 Sep 2003 16:21:38 -0000	1.23
@@ -407,7 +407,7 @@
 
 	if (index_mail_cache_can_add(mail, MAIL_CACHE_MESSAGEPART)) {
 		t_push();
-		buffer = buffer_create_dynamic(data_stack_pool,
+		buffer = buffer_create_dynamic(pool_datastack_create(),
 					       1024, (size_t)-1);
 		message_part_serialize(mail->data.parts, buffer);
 

Index: index-search.c
===================================================================
RCS file: /home/cvs/dovecot/src/lib-storage/index/index-search.c,v
retrieving revision 1.79
retrieving revision 1.80
diff -u -d -r1.79 -r1.80
--- index-search.c	8 Sep 2003 02:24:29 -0000	1.79
+++ index-search.c	21 Sep 2003 16:21:38 -0000	1.80
@@ -423,7 +423,7 @@
 			struct message_address *addr;
 			string_t *str;
 
-			addr = message_address_parse(data_stack_pool,
+			addr = message_address_parse(pool_datastack_create(),
 						     ctx->hdr->full_value,
 						     ctx->hdr->full_value_len,
 						     0);



More information about the dovecot-cvs mailing list