All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 2/5] perf config: Refactor the code using 'ret' variable in cmd_config()
@ 2017-06-17  3:46 Taeung Song
  2017-06-19 18:34 ` Arnaldo Carvalho de Melo
  2017-06-20  9:08 ` [tip:perf/core] " tip-bot for Taeung Song
  0 siblings, 2 replies; 3+ messages in thread
From: Taeung Song @ 2017-06-17  3:46 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo; +Cc: linux-kernel, Jiri Olsa, Namhyung Kim

To simplify the code related to 'ret' variable in cmd_config(),
initialize 'ret' with -1 instead of 0.

Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Taeung Song <treeze.taeung@gmail.com>
---
 tools/perf/builtin-config.c | 30 +++++++++++++-----------------
 1 file changed, 13 insertions(+), 17 deletions(-)

diff --git a/tools/perf/builtin-config.c b/tools/perf/builtin-config.c
index bb1be79..ece4558 100644
--- a/tools/perf/builtin-config.c
+++ b/tools/perf/builtin-config.c
@@ -156,7 +156,7 @@ static int parse_config_arg(char *arg, char **var, char **value)
 
 int cmd_config(int argc, const char **argv)
 {
-	int i, ret = 0;
+	int i, ret = -1;
 	struct perf_config_set *set;
 	char *user_config = mkpath("%s/.perfconfig", getenv("HOME"));
 	const char *config_filename;
@@ -186,10 +186,8 @@ int cmd_config(int argc, const char **argv)
 	 * because of reinitializing with options config file location.
 	 */
 	set = perf_config_set__new();
-	if (!set) {
-		ret = -1;
+	if (!set)
 		goto out_err;
-	}
 
 	switch (actions) {
 	case ACTION_LIST:
@@ -197,10 +195,11 @@ int cmd_config(int argc, const char **argv)
 			pr_err("Error: takes no arguments\n");
 			parse_options_usage(config_usage, config_options, "l", 1);
 		} else {
-			ret = show_config(set);
-			if (ret < 0)
+			if (show_config(set) < 0) {
 				pr_err("Nothing configured, "
 				       "please check your %s \n", config_filename);
+				goto out_err;
+			}
 		}
 		break;
 	default:
@@ -215,38 +214,35 @@ int cmd_config(int argc, const char **argv)
 
 			if (!arg) {
 				pr_err("%s: strdup failed\n", __func__);
-				ret = -1;
-				break;
+				goto out_err;
 			}
 
 			if (parse_config_arg(arg, &var, &value) < 0) {
 				free(arg);
-				ret = -1;
-				break;
+				goto out_err;
 			}
 
 			if (value == NULL) {
-				ret = show_spec_config(set, var);
-				if (ret < 0) {
+				if (show_spec_config(set, var) < 0) {
 					pr_err("%s is not configured: %s\n",
 					       var, config_filename);
 					free(arg);
-					break;
+					goto out_err;
 				}
 			} else {
-				ret = set_config(set, config_filename, var, value);
-				if (ret < 0) {
+				if (set_config(set, config_filename, var, value) < 0) {
 					pr_err("Failed to set '%s=%s' on %s\n",
 					       var, value, config_filename);
 					free(arg);
-					break;
+					goto out_err;
 				}
 			}
 			free(arg);
 		}
 	}
 
-	perf_config_set__delete(set);
+	ret = 0;
 out_err:
+	perf_config_set__delete(set);
 	return ret;
 }
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-06-20  9:10 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-17  3:46 [PATCH v4 2/5] perf config: Refactor the code using 'ret' variable in cmd_config() Taeung Song
2017-06-19 18:34 ` Arnaldo Carvalho de Melo
2017-06-20  9:08 ` [tip:perf/core] " tip-bot for Taeung Song

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.