[PATCH 5/5] perf expr: Make expr__parse return -1 on error

From: Jiri Olsa
Date: Mon Feb 24 2020 - 03:29:54 EST


To match the error value of the expr__find_other function,
so all exported expr functions return the same values:
0 on success, -1 on error.

Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
---
tools/perf/tests/expr.c | 4 ++--
tools/perf/util/expr.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/perf/tests/expr.c b/tools/perf/tests/expr.c
index 755d73c86c68..28313e59d6f6 100644
--- a/tools/perf/tests/expr.c
+++ b/tools/perf/tests/expr.c
@@ -45,11 +45,11 @@ int test__expr(struct test *t __maybe_unused, int subtest __maybe_unused)

p = "FOO/0";
ret = expr__parse(&val, &ctx, p);
- TEST_ASSERT_VAL("division by zero", ret == 1);
+ TEST_ASSERT_VAL("division by zero", ret == -1);

p = "BAR/";
ret = expr__parse(&val, &ctx, p);
- TEST_ASSERT_VAL("missing operand", ret == 1);
+ TEST_ASSERT_VAL("missing operand", ret == -1);

TEST_ASSERT_VAL("find other",
expr__find_other("FOO + BAR + BAZ + BOZO", "FOO", &other, &num_other) == 0);
diff --git a/tools/perf/util/expr.c b/tools/perf/util/expr.c
index 45b25530db5b..fd192ddf93c1 100644
--- a/tools/perf/util/expr.c
+++ b/tools/perf/util/expr.c
@@ -54,7 +54,7 @@ __expr__parse(double *val, struct parse_ctx *ctx, const char *expr,

int expr__parse(double *final_val, struct parse_ctx *ctx, const char *expr)
{
- return __expr__parse(final_val, ctx, expr, EXPR_PARSE);
+ return __expr__parse(final_val, ctx, expr, EXPR_PARSE) ? -1 : 0;
}

static bool
--
2.24.1