[clutter/clutter-1.16] backend-x11: Remove bad branch prediction
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [clutter/clutter-1.16] backend-x11: Remove bad branch prediction
- Date: Thu, 11 Jul 2013 18:18:46 +0000 (UTC)
commit 0b32f99bd10cd7f4cbef55889328e93989c1551b
Author: Jasper St. Pierre <jstpierre mecheye net>
Date: Wed Jul 10 16:26:01 2013 -0400
backend-x11: Remove bad branch prediction
This will only get once, at in Clutter initialization time.
https://bugzilla.gnome.org/show_bug.cgi?id=703969
clutter/x11/clutter-backend-x11.c | 105 ++++++++++++++++++-------------------
1 files changed, 51 insertions(+), 54 deletions(-)
---
diff --git a/clutter/x11/clutter-backend-x11.c b/clutter/x11/clutter-backend-x11.c
index f2892d9..6d9d9d4 100644
--- a/clutter/x11/clutter-backend-x11.c
+++ b/clutter/x11/clutter-backend-x11.c
@@ -223,71 +223,68 @@ clutter_backend_x11_xsettings_notify (const char *name,
static void
clutter_backend_x11_create_device_manager (ClutterBackendX11 *backend_x11)
{
- if (G_UNLIKELY (backend_x11->device_manager == NULL))
- {
- ClutterEventTranslator *translator;
- ClutterBackend *backend;
+ ClutterEventTranslator *translator;
+ ClutterBackend *backend;
#if defined(HAVE_XINPUT) || defined(HAVE_XINPUT_2)
- if (clutter_enable_xinput)
+ if (clutter_enable_xinput)
+ {
+ int event_base, first_event, first_error;
+
+ if (XQueryExtension (backend_x11->xdpy, "XInputExtension",
+ &event_base,
+ &first_event,
+ &first_error))
{
- int event_base, first_event, first_error;
+#ifdef HAVE_XINPUT_2
+ int major = 2;
+ int minor = 3;
- if (XQueryExtension (backend_x11->xdpy, "XInputExtension",
- &event_base,
- &first_event,
- &first_error))
+ if (XIQueryVersion (backend_x11->xdpy, &major, &minor) != BadRequest)
{
-#ifdef HAVE_XINPUT_2
- int major = 2;
- int minor = 3;
-
- if (XIQueryVersion (backend_x11->xdpy, &major, &minor) != BadRequest)
- {
- CLUTTER_NOTE (BACKEND, "Creating XI2 device manager");
- backend_x11->has_xinput = TRUE;
- backend_x11->device_manager =
- g_object_new (CLUTTER_TYPE_DEVICE_MANAGER_XI2,
- "backend", backend_x11,
- "opcode", event_base,
- NULL);
-
- backend_x11->xi_minor = minor;
- }
- else
+ CLUTTER_NOTE (BACKEND, "Creating XI2 device manager");
+ backend_x11->has_xinput = TRUE;
+ backend_x11->device_manager =
+ g_object_new (CLUTTER_TYPE_DEVICE_MANAGER_XI2,
+ "backend", backend_x11,
+ "opcode", event_base,
+ NULL);
+
+ backend_x11->xi_minor = minor;
+ }
+ else
#endif /* HAVE_XINPUT_2 */
- {
- CLUTTER_NOTE (BACKEND, "Creating Core+XI device manager");
- backend_x11->has_xinput = TRUE;
- backend_x11->device_manager =
- g_object_new (CLUTTER_TYPE_DEVICE_MANAGER_X11,
- "backend", backend_x11,
- "event-base", first_event,
- NULL);
-
- backend_x11->xi_minor = -1;
- }
+ {
+ CLUTTER_NOTE (BACKEND, "Creating Core+XI device manager");
+ backend_x11->has_xinput = TRUE;
+ backend_x11->device_manager =
+ g_object_new (CLUTTER_TYPE_DEVICE_MANAGER_X11,
+ "backend", backend_x11,
+ "event-base", first_event,
+ NULL);
+
+ backend_x11->xi_minor = -1;
}
}
- else
+ }
+ else
#endif /* HAVE_XINPUT || HAVE_XINPUT_2 */
- {
- CLUTTER_NOTE (BACKEND, "Creating Core device manager");
- backend_x11->has_xinput = FALSE;
- backend_x11->device_manager =
- g_object_new (CLUTTER_TYPE_DEVICE_MANAGER_X11,
- "backend", backend_x11,
- NULL);
-
- backend_x11->xi_minor = -1;
- }
-
- backend = CLUTTER_BACKEND (backend_x11);
- backend->device_manager = backend_x11->device_manager;
+ {
+ CLUTTER_NOTE (BACKEND, "Creating Core device manager");
+ backend_x11->has_xinput = FALSE;
+ backend_x11->device_manager =
+ g_object_new (CLUTTER_TYPE_DEVICE_MANAGER_X11,
+ "backend", backend_x11,
+ NULL);
- translator = CLUTTER_EVENT_TRANSLATOR (backend_x11->device_manager);
- _clutter_backend_add_event_translator (backend, translator);
+ backend_x11->xi_minor = -1;
}
+
+ backend = CLUTTER_BACKEND (backend_x11);
+ backend->device_manager = backend_x11->device_manager;
+
+ translator = CLUTTER_EVENT_TRANSLATOR (backend_x11->device_manager);
+ _clutter_backend_add_event_translator (backend, translator);
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]