diff options
author | Steven Rostedt <srostedt@redhat.com> | 2010-04-06 10:15:32 -0400 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2010-04-06 10:15:32 -0400 |
commit | e3e4e76fce3671d9f002f99454d9776cb1659b13 (patch) | |
tree | 67a8bbe5db7297eddef09beb9cbc260a3affd6c0 | |
parent | c7c96756134a7e8ea610f116312636bd8c6baf18 (diff) |
parse-events: Fix error path from process_value() failing
The parent arg in process_value() may not be changed on error.
If we pass in an argument, then it needs to be initialized to NULL
if we plan on freeing it on failure.
Reported-by: Li Zefan <lizf@cn.fujitsu.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
-rw-r--r-- | parse-filter.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/parse-filter.c b/parse-filter.c index a973a72..4efce04 100644 --- a/parse-filter.c +++ b/parse-filter.c | |||
@@ -615,7 +615,7 @@ process_cmp(struct event_format *event, enum filter_cmp_type op_type, | |||
615 | char **tok, char **error_str) | 615 | char **tok, char **error_str) |
616 | { | 616 | { |
617 | struct filter_arg *arg; | 617 | struct filter_arg *arg; |
618 | struct filter_arg *rarg; | 618 | struct filter_arg *rarg = NULL; |
619 | enum event_type orig_type; | 619 | enum event_type orig_type; |
620 | enum event_type type; | 620 | enum event_type type; |
621 | int ret; | 621 | int ret; |
@@ -744,7 +744,7 @@ process_exp(struct event_format *event, enum filter_exp_type etype, | |||
744 | struct filter_arg *larg, struct filter_arg **parg, | 744 | struct filter_arg *larg, struct filter_arg **parg, |
745 | char **tok, char **error_str) | 745 | char **tok, char **error_str) |
746 | { | 746 | { |
747 | struct filter_arg *rarg; | 747 | struct filter_arg *rarg = NULL; |
748 | struct filter_arg *arg; | 748 | struct filter_arg *arg; |
749 | enum event_type orig_type; | 749 | enum event_type orig_type; |
750 | enum event_type type; | 750 | enum event_type type; |