From fed36158ccdf8a9b92e85f67fc459a8d1bfcd9de Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Tue, 27 Dec 2022 09:59:16 -0500 Subject: [PATCH] lib-storage: mail_search_args_simplify() - Add data stack frame --- src/lib-storage/mail-search-args-simplify.c | 25 ++++++++++++++++----- 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/src/lib-storage/mail-search-args-simplify.c b/src/lib-storage/mail-search-args-simplify.c index 2a1cace6d6..0ef1306ff4 100644 --- a/src/lib-storage/mail-search-args-simplify.c +++ b/src/lib-storage/mail-search-args-simplify.c @@ -398,13 +398,10 @@ mail_search_args_have_all_equal(struct mail_search_arg *parent_arg, = A + B */ static bool -mail_search_args_simplify_drop_redundant_args(struct mail_search_args *all_args, - struct mail_search_arg **argsp, - bool and_arg) +mail_search_args_simplify_drop_redundant_args_real(struct mail_search_args *all_args, + struct mail_search_arg **argsp, + bool and_arg) { - if (*argsp == NULL || (*argsp)->next == NULL) - return FALSE; - struct mail_search_arg *arg, **argp; enum mail_search_arg_type child_subargs_type; bool changed = FALSE; @@ -452,6 +449,22 @@ mail_search_args_simplify_drop_redundant_args(struct mail_search_args *all_args, return changed; } +static bool +mail_search_args_simplify_drop_redundant_args(struct mail_search_args *all_args, + struct mail_search_arg **argsp, + bool and_arg) +{ + if (*argsp == NULL || (*argsp)->next == NULL) + return FALSE; + + bool ret; + T_BEGIN { + ret = mail_search_args_simplify_drop_redundant_args_real( + all_args, argsp, and_arg); + } T_END; + return ret; +} + static bool mail_search_args_simplify_extract_common(struct mail_search_args *all_args, struct mail_search_arg **argsp, -- 2.47.3