[glib] GApplication: Avoid getting the default context repeatidly
- From: Xavier Claessens <xclaesse src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib] GApplication: Avoid getting the default context repeatidly
- Date: Wed, 16 Dec 2015 16:45:09 +0000 (UTC)
commit aa9a33b0dabb68a6586956d6d4aa0c861e534321
Author: Xavier Claessens <xavier claessens collabora com>
Date: Wed Dec 16 11:34:41 2015 -0500
GApplication: Avoid getting the default context repeatidly
This avoids getting a global lock on every main loop iteration.
https://bugzilla.gnome.org/show_bug.cgi?id=759554
gio/gapplication.c | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
---
diff --git a/gio/gapplication.c b/gio/gapplication.c
index 05178e2..e24ab69 100644
--- a/gio/gapplication.c
+++ b/gio/gapplication.c
@@ -2269,6 +2269,7 @@ g_application_run (GApplication *application,
{
gchar **arguments;
int status;
+ GMainContext *context;
gboolean acquired_context;
g_return_val_if_fail (G_IS_APPLICATION (application), 1);
@@ -2297,7 +2298,8 @@ g_application_run (GApplication *application,
g_free (prgname);
}
- acquired_context = g_main_context_acquire (NULL);
+ context = g_main_context_default ();
+ acquired_context = g_main_context_acquire (context);
g_return_val_if_fail (acquired_context, 0);
if (!G_APPLICATION_GET_CLASS (application)
@@ -2331,7 +2333,7 @@ g_application_run (GApplication *application,
if (application->priv->must_quit_now)
break;
- g_main_context_iteration (NULL, TRUE);
+ g_main_context_iteration (context, TRUE);
status = 0;
}
@@ -2355,10 +2357,10 @@ g_application_run (GApplication *application,
g_settings_sync ();
if (!application->priv->must_quit_now)
- while (g_main_context_iteration (NULL, FALSE))
+ while (g_main_context_iteration (context, FALSE))
;
- g_main_context_release (NULL);
+ g_main_context_release (context);
return status;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]