perf tools: sort_dimension__add shouldn't die
authorArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 2 Apr 2010 15:30:57 +0000 (12:30 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 2 Apr 2010 19:28:35 +0000 (16:28 -0300)
Propagate error instead.

LKML-Reference: <new-submission>
Cc: Frédéric Weisbecker <fweisbec@gmail.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/builtin-report.c
tools/perf/util/sort.c

index 6767f10..b13a7e2 100644 (file)
@@ -473,7 +473,8 @@ int cmd_report(int argc, const char **argv, const char *prefix __used)
        setup_sorting(report_usage, options);
 
        if (parent_pattern != default_parent_pattern) {
-               sort_dimension__add("parent");
+               if (sort_dimension__add("parent") < 0)
+                       return -1;
                sort_parent.elide = 1;
        } else
                symbol_conf.exclude_other = false;
index 31329a1..9d24d4b 100644 (file)
@@ -264,9 +264,8 @@ int sort_dimension__add(const char *tok)
                                char err[BUFSIZ];
 
                                regerror(ret, &parent_regex, err, sizeof(err));
-                               fprintf(stderr, "Invalid regex: %s\n%s",
-                                       parent_pattern, err);
-                               exit(-1);
+                               pr_err("Invalid regex: %s\n%s", parent_pattern, err);
+                               return -EINVAL;
                        }
                        sort__has_parent = 1;
                }