Cc: Jiri Olsa <jo...@kernel.org>
Cc: Namhyung Kim <namhy...@kernel.org>
Signed-off-by: Taeung Song <treeze.tae...@gmail.com>
---
 tools/perf/builtin-config.c | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

diff --git a/tools/perf/builtin-config.c b/tools/perf/builtin-config.c
index 55f04f8..80668fa 100644
--- a/tools/perf/builtin-config.c
+++ b/tools/perf/builtin-config.c
@@ -159,6 +159,7 @@ int cmd_config(int argc, const char **argv)
        int i, ret = 0;
        struct perf_config_set *set;
        char *user_config = mkpath("%s/.perfconfig", getenv("HOME"));
+       const char *config_filename;
 
        argc = parse_options(argc, argv, config_options, config_usage,
                             PARSE_OPT_STOP_AT_NON_OPTION);
@@ -175,6 +176,11 @@ int cmd_config(int argc, const char **argv)
        else if (use_user_config)
                config_exclusive_filename = user_config;
 
+       if (!config_exclusive_filename)
+               config_filename = user_config;
+       else
+               config_filename = config_exclusive_filename;
+
        /*
         * At only 'config' sub-command, individually use the config set
         * because of reinitializing with options config file location.
@@ -192,13 +198,9 @@ int cmd_config(int argc, const char **argv)
                        parse_options_usage(config_usage, config_options, "l", 
1);
                } else {
                        ret = show_config(set);
-                       if (ret < 0) {
-                               const char * config_filename = 
config_exclusive_filename;
-                               if (!config_exclusive_filename)
-                                       config_filename = user_config;
+                       if (ret < 0)
                                pr_err("Nothing configured, "
                                       "please check your %s \n", 
config_filename);
-                       }
                }
                break;
        default:
@@ -221,13 +223,8 @@ int cmd_config(int argc, const char **argv)
 
                                if (value == NULL)
                                        ret = show_spec_config(set, var);
-                               else {
-                                       const char *config_filename = 
config_exclusive_filename;
-
-                                       if (!config_exclusive_filename)
-                                               config_filename = user_config;
+                               else
                                        ret = set_config(set, config_filename, 
var, value);
-                               }
                                free(arg);
                        }
                } else
-- 
2.7.4

Reply via email to