add minor optimization for e_manager_current_get for most common case
authorMike Blumenkrantz <m.blumenkran@samsung.com>
Mon, 7 Oct 2013 02:52:09 +0000 (03:52 +0100)
committerMike Blumenkrantz <m.blumenkran@samsung.com>
Mon, 7 Oct 2013 02:52:09 +0000 (03:52 +0100)
there's only more than one manager when we're running true multi-head, which is pretty rare/non-existent with compositing, so we can avoid an X call here by just returning the only possible manager

src/bin/e_manager.c

index 7dca2bef96120bb30c3aad026b1dcbe01e98a33b..3d167cd021fd50f7d132412d25668c573485c70c 100644 (file)
@@ -455,6 +455,8 @@ e_manager_current_get(void)
    int x, y;
 
    if (!managers) return NULL;
+   if (eina_list_count(managers) == 1)
+     return eina_list_data_get(managers);
    EINA_LIST_FOREACH(managers, l, man)
      {
         ecore_x_pointer_xy_get(man->win, &x, &y);