]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib: event_filter_parse() - Add data stack frame
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Wed, 26 Apr 2023 20:25:18 +0000 (23:25 +0300)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Sun, 21 May 2023 17:41:38 +0000 (17:41 +0000)
src/lib/event-filter.c

index 05be80970fe7f5f85381825a729868e5b761ddad..795f54fe2854d784697f8edad444b97185f575d7 100644 (file)
@@ -156,8 +156,9 @@ static bool filter_node_requires_event_name(struct event_filter_node *node)
        }
 }
 
-int event_filter_parse(const char *str, struct event_filter *filter,
-                      const char **error_r)
+static int
+event_filter_parse_real(const char *str, struct event_filter *filter,
+                       const char **error_r)
 {
        struct event_filter_query_internal *int_query;
        struct event_filter_parser_state state;
@@ -202,6 +203,16 @@ int event_filter_parse(const char *str, struct event_filter *filter,
        return (ret != 0) ? -1 : 0;
 }
 
+int event_filter_parse(const char *str, struct event_filter *filter,
+                      const char **error_r)
+{
+       int ret;
+       T_BEGIN {
+               ret = event_filter_parse_real(str, filter, error_r);
+       } T_END_PASS_STR_IF(ret < 0, error_r);
+       return ret;
+}
+
 bool event_filter_category_to_log_type(const char *name,
                                       enum event_filter_log_type *log_type_r)
 {