eo class add - dont always call getenv as this is epxensive. get once
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>
Fri, 9 Sep 2016 02:19:01 +0000 (11:19 +0900)
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>
Fri, 9 Sep 2016 09:53:20 +0000 (18:53 +0900)
so class creation is possibly a little slower thanks to always calling
getenv. get once then store rsult from there on out.

src/lib/eo/eo.c

index d90d417..e75e36c 100644 (file)
@@ -1335,7 +1335,14 @@ efl_class_new(const Efl_Class_Description *desc, const Efl_Class *parent_id, ...
      }
 
    klass->obj_size = extn_data_off;
-   if (getenv("EO_DEBUG"))
+   static unsigned char _eo_debug = 0;
+
+   if (_eo_debug == 0)
+     {
+        if (getenv("EO_DEBUG")) _eo_debug = 2;
+        else _eo_debug = 1;
+     }
+   if (_eo_debug == 2)
      {
         fprintf(stderr, "Eo class '%s' will take %u bytes per object.\n",
                 desc->name, klass->obj_size);