efl eo - pass test suite function overrides again after adding cache
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>
Thu, 22 Oct 2015 00:35:11 +0000 (09:35 +0900)
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>
Thu, 22 Oct 2015 00:35:11 +0000 (09:35 +0900)
removing the klass member meant removing hooks and keeping cache small
but that meant not using it. this meand if the object is not an obj...
i removed the:

call->obj = _eo_class_id_get(call->klass);

line - seemed harmless/pointless. apparently not. so put it back but
use the klass there in local vars and not in call as it's not there
(and not needed).

fix.

src/lib/eo/eo.c

index 783e280..89bc56b 100644 (file)
@@ -576,6 +576,7 @@ _eo_call_resolve(const char *func_name, Eo_Op_Call_Data *call, Eo_Call_Cache *ca
                     }
                   else
                     {
+                       call->obj = _eo_class_id_get(inputklass);
                        call->data = NULL;
                     }
                   return EINA_TRUE;
@@ -621,6 +622,7 @@ _eo_call_resolve(const char *func_name, Eo_Op_Call_Data *call, Eo_Call_Cache *ca
           }
         else
           {
+             call->obj = _eo_class_id_get(klass);
              call->data = NULL;
           }