raster pushed a commit to branch efl-1.22.

http://git.enlightenment.org/core/efl.git/commit/?id=6c1f97169f832a25fbf8a03ec3c92488a52cd62c

commit 6c1f97169f832a25fbf8a03ec3c92488a52cd62c
Author: Carsten Haitzler (Rasterman) <[email protected]>
Date:   Sat Jun 15 09:19:20 2019 +0100

    evas - pointer in get - dont On walk inlist but O1 jump to last
    
    to walk inreverse we need to jump to last first then walk backwards...
    what we were doing is calling eina_inlist_last() which  is defined to
    walk rather than that using list->last ... this totally got rid of
    _evas_event_object_list_raw_in_get() from my perf list ... and i was
    wondering how it got there to start with.
    
    this is such an obvious optimization...
---
 src/lib/evas/canvas/evas_events.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/evas/canvas/evas_events.c 
b/src/lib/evas/canvas/evas_events.c
index ca2a903ae4..19bcf2811c 100644
--- a/src/lib/evas/canvas/evas_events.c
+++ b/src/lib/evas/canvas/evas_events.c
@@ -379,7 +379,7 @@ _evas_event_object_list_raw_in_get(Evas *eo_e, Eina_List 
*in,
    spaces++;
    if (ilist)
      {
-        for (obj = _EINA_INLIST_CONTAINER(obj, eina_inlist_last(ilist));
+        for (obj = _EINA_INLIST_CONTAINER(obj, ilist->last);
              obj;
              obj = _EINA_INLIST_CONTAINER(obj, EINA_INLIST_GET(obj)->prev))
           {

-- 


Reply via email to