Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4341ec6b authored by Taeung Song's avatar Taeung Song Committed by Arnaldo Carvalho de Melo
Browse files

perf config: Refactor a duplicated code for obtaining config file name



We were doing the same sequence to figure out what is the config
pathname to use, fix it by doing it before those two uses.

Signed-off-by: default avatarTaeung Song <treeze.taeung@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: http://lkml.kernel.org/r/1493209268-5543-2-git-send-email-treeze.taeung@gmail.com


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent d8040645
Loading
Loading
Loading
Loading
+8 −11
Original line number Diff line number Diff line
@@ -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,14 +198,10 @@ 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:
		if (argc) {
@@ -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