mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-04-01 13:23:07 +02:00
GApplication: Check more before warning about a missing signal handler.
* gio/application.c (g_application_real_command_line): Check that the default signal handler is not the current one before complaining, because it is not unusual for overloads to call the base class implementation as a matter of habit. g_application_real_open() and g_application_real_activate() already do this extra check.
This commit is contained in:
parent
1485871ed5
commit
91614bb5fe
@ -255,18 +255,24 @@ static int
|
||||
g_application_real_command_line (GApplication *application,
|
||||
GApplicationCommandLine *cmdline)
|
||||
{
|
||||
static gboolean warned;
|
||||
if (!g_signal_has_handler_pending (application,
|
||||
g_application_signals[SIGNAL_COMMAND_LINE],
|
||||
0, TRUE) &&
|
||||
G_APPLICATION_GET_CLASS (application)->command_line == g_application_real_command_line)
|
||||
{
|
||||
static gboolean warned;
|
||||
|
||||
if (warned)
|
||||
return 1;
|
||||
|
||||
g_warning ("Your application claims to support custom command line "
|
||||
"handling but does not implement g_application_command_line() "
|
||||
"and has no handlers connected to the 'command-line' signal.");
|
||||
|
||||
warned = TRUE;
|
||||
}
|
||||
|
||||
if (warned)
|
||||
return 1;
|
||||
|
||||
g_warning ("Your application claims to support custom command line "
|
||||
"handling but does not implement g_application_command_line() "
|
||||
"and has no handlers connected to the 'command-line' signal.");
|
||||
|
||||
warned = TRUE;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
|
Loading…
x
Reference in New Issue
Block a user