]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
Removed pool parameter from message_search_init().
authorTimo Sirainen <tss@iki.fi>
Mon, 9 Jun 2008 19:02:02 +0000 (22:02 +0300)
committerTimo Sirainen <tss@iki.fi>
Mon, 9 Jun 2008 19:02:02 +0000 (22:02 +0300)
--HG--
branch : HEAD

src/lib-mail/message-search.c
src/lib-mail/message-search.h
src/lib-storage/index/index-search.c

index acb9d45dab0ddaa552c9c18ef9d28a9ab64ea52b..712cf4054bdcdf5c275e7b90ba4d4cdcb9e2292f 100644 (file)
@@ -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, const char *key, const char *charset,
        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 message_search_context **_ctx)
        *_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,
index 6f10cf701b258df91f58672546b134e17ca0fe4e..740c4d249a56aa3971ce4ea68b7edc361dfb2803 100644 (file)
@@ -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);
index a26eef39a49c259f610567e530981fb8acdf0c03..1ae4e1e4dffd57c9e74d8fc94f7d177eb24afdec 100644 (file)
@@ -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_search_context *ctx,
        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 mail_search_context *_ctx)
        (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);