dovecot-1.2: Removed pool parameter from message_search_init().

dovecot at dovecot.org dovecot at dovecot.org
Tue Jun 10 07:27:23 EEST 2008


details:   http://hg.dovecot.org/dovecot-1.2/rev/d440b7cad709
changeset: 7805:d440b7cad709
user:      Timo Sirainen <tss at iki.fi>
date:      Mon Jun 09 22:02:02 2008 +0300
description:
Removed pool parameter from message_search_init().

diffstat:

3 files changed, 12 insertions(+), 23 deletions(-)
src/lib-mail/message-search.c        |   24 ++++++++++--------------
src/lib-mail/message-search.h        |    2 +-
src/lib-storage/index/index-search.c |    9 +--------

diffs (117 lines):

diff -r 27b97457d274 -r d440b7cad709 src/lib-mail/message-search.c
--- a/src/lib-mail/message-search.c	Mon Jun 09 21:25:21 2008 +0300
+++ b/src/lib-mail/message-search.c	Mon Jun 09 22:02:02 2008 +0300
@@ -12,8 +12,6 @@
 #include "message-search.h"
 
 struct message_search_context {
-	pool_t pool;
-
 	char *key;
 	char *key_charset;
 	unsigned int key_len;
@@ -27,7 +25,7 @@ struct message_search_context {
 };
 
 static int
-message_search_init_real(pool_t pool, const char *key, const char *charset,
+message_search_init_real(const char *key, const char *charset,
 			 enum message_search_flags flags,
 			 struct message_search_context **ctx_r)
 {
@@ -43,28 +41,26 @@ message_search_init_real(pool_t pool, co
 	else if (result != CHARSET_RET_OK)
 		ret = -1;
 	else {
-		ctx = *ctx_r = p_new(pool, struct message_search_context, 1);
-		ctx->pool = pool;
-		ctx->key = p_strdup(pool, str_c(key_utf8));
+		ctx = *ctx_r = i_new(struct message_search_context, 1);
+		ctx->key = i_strdup(str_c(key_utf8));
 		ctx->key_len = str_len(key_utf8);
-		ctx->key_charset = p_strdup(pool, charset);
+		ctx->key_charset = i_strdup(charset);
 		ctx->flags = flags;
 		ctx->decoder = message_decoder_init(TRUE);
-		ctx->str_find_ctx = str_find_init(pool, ctx->key);
+		ctx->str_find_ctx = str_find_init(default_pool, ctx->key);
 		ret = 1;
 	}
 	return ret;
 }
 
-int message_search_init(pool_t pool, const char *key, const char *charset,
+int message_search_init(const char *key, const char *charset,
 			enum message_search_flags flags,
 			struct message_search_context **ctx_r)
 {
 	int ret;
 
 	T_BEGIN {
-		ret = message_search_init_real(pool, key, charset, flags,
-					       ctx_r);
+		ret = message_search_init_real(key, charset, flags, ctx_r);
 	} T_END;
 	return ret;
 }
@@ -76,9 +72,9 @@ void message_search_deinit(struct messag
 	*_ctx = NULL;
 	str_find_deinit(&ctx->str_find_ctx);
 	message_decoder_deinit(&ctx->decoder);
-	p_free(ctx->pool, ctx->key);
-	p_free(ctx->pool, ctx->key_charset);
-	p_free(ctx->pool, ctx);
+	i_free(ctx->key);
+	i_free(ctx->key_charset);
+	i_free(ctx);
 }
 
 static void parse_content_type(struct message_search_context *ctx,
diff -r 27b97457d274 -r d440b7cad709 src/lib-mail/message-search.h
--- a/src/lib-mail/message-search.h	Mon Jun 09 21:25:21 2008 +0300
+++ b/src/lib-mail/message-search.h	Mon Jun 09 22:02:02 2008 +0300
@@ -12,7 +12,7 @@ enum message_search_flags {
 
 /* Returns 1 if ok, 0 if unknown charset, -1 if key contains invalid characters
    in given charset. */
-int message_search_init(pool_t pool, const char *key, const char *charset,
+int message_search_init(const char *key, const char *charset,
 			enum message_search_flags flags,
 			struct message_search_context **ctx_r);
 void message_search_deinit(struct message_search_context **ctx);
diff -r 27b97457d274 -r d440b7cad709 src/lib-storage/index/index-search.c
--- a/src/lib-storage/index/index-search.c	Mon Jun 09 21:25:21 2008 +0300
+++ b/src/lib-storage/index/index-search.c	Mon Jun 09 22:02:02 2008 +0300
@@ -35,7 +35,6 @@ struct index_search_context {
 	struct mail *mail;
 	struct index_mail *imail;
 
-	pool_t search_pool;
 	const char *error;
 
 	struct timeval search_start_time, last_notify;
@@ -325,13 +324,10 @@ msg_search_arg_context(struct index_sear
 	if (arg_ctx != NULL)
 		return arg_ctx;
 
-	if (ctx->search_pool == NULL)
-		ctx->search_pool = pool_alloconly_create("search pool", 8192);
-
 	flags = (arg->type == SEARCH_BODY || arg->type == SEARCH_BODY_FAST) ?
 		MESSAGE_SEARCH_FLAG_SKIP_HEADERS : 0;
 
-	ret = message_search_init(ctx->search_pool, arg->value.str,
+	ret = message_search_init(arg->value.str,
 				  ctx->mail_ctx.args->charset, flags,
 				  &arg_ctx);
 	if (ret > 0) {
@@ -907,9 +903,6 @@ int index_storage_search_deinit(struct m
 	(void)mail_search_args_foreach(ctx->mail_ctx.args->args,
 				       search_arg_deinit, NULL);
 
-	if (ctx->search_pool != NULL)
-		pool_unref(&ctx->search_pool);
-
 	if (ctx->mail_ctx.sort_program != NULL)
 		index_sort_program_deinit(&ctx->mail_ctx.sort_program);
 	array_free(&ctx->mail_ctx.results);


More information about the dovecot-cvs mailing list