GApplication: ignore --help if not handling args
authorRyan Lortie <desrt@desrt.ca>
Sat, 4 Oct 2014 16:47:33 +0000 (12:47 -0400)
committerRyan Lortie <desrt@desrt.ca>
Mon, 20 Oct 2014 13:00:51 +0000 (15:00 +0200)
If the user didn't register any arguments for parsing, also ignore
--help.  This fixes a regression in meld.

https://bugzilla.gnome.org/show_bug.cgi?id=737869

gio/gapplication.c

index ebbc450..1fa1955 100644 (file)
@@ -498,9 +498,15 @@ g_application_parse_command_line (GApplication   *application,
    * G_APPLICATION_HANDLES_COMMAND_LINE then we have to assume that
    * their primary instance commandline handler may want to deal with
    * the arguments.  We must therefore ignore them.
+   *
+   * We must also ignore --help in this case since some applications
+   * will try to handle this from the remote side.  See #737869.
    */
   if (application->priv->main_options == NULL && (application->priv->flags & G_APPLICATION_HANDLES_COMMAND_LINE))
-    g_option_context_set_ignore_unknown_options (context, TRUE);
+    {
+      g_option_context_set_ignore_unknown_options (context, TRUE);
+      g_option_context_set_help_enabled (context, FALSE);
+    }
 
   /* In the case that we are not explicitly marked as a service or a
    * launcher then we want to add the "--gapplication-service" option to