Diff between 657ca31b90a8b5a7509537f0ee76335f593d9de7 and 6db3470c2ea161b4b808ad1fc80dfd7e014fd359

Changed Files

File Additions Deletions Status
client/main.c +7 -6 modified

Full Patch

diff --git a/client/main.c b/client/main.c
index 8c9d5c3..255cbd5 100644
--- a/client/main.c
+++ b/client/main.c
@@ -2355,10 +2355,10 @@ static gboolean option_version = FALSE;
 static gboolean parse_agent(const char *key, const char *value,
 					gpointer user_data, GError **error)
 {
-	if (value)
-		auto_register_agent = g_strdup(value);
-	else
-		auto_register_agent = g_strdup("");
+	if (!value)
+		return FALSE;
+
+	auto_register_agent = g_strdup(value);
 
 	return TRUE;
 }
@@ -2366,8 +2366,7 @@ static gboolean parse_agent(const char *key, const char *value,
 static GOptionEntry options[] = {
 	{ "version", 'v', 0, G_OPTION_ARG_NONE, &option_version,
 				"Show version information and exit" },
-	{ "agent", 'a', G_OPTION_FLAG_OPTIONAL_ARG,
-				G_OPTION_ARG_CALLBACK, parse_agent,
+	{ "agent", 'a', 0, G_OPTION_ARG_CALLBACK, parse_agent,
 				"Register agent handler", "CAPABILITY" },
 	{ NULL },
 };
@@ -2385,6 +2384,8 @@ int main(int argc, char *argv[])
 	GDBusClient *client;
 	guint signal;
 
+	auto_register_agent = g_strdup("");
+
 	context = g_option_context_new(NULL);
 	g_option_context_add_main_entries(context, options, NULL);