From f3ce7031e20b1cc9d6598f2f29c70e4a0ad91a8f Mon Sep 17 00:00:00 2001 From: Daniel Zaoui Date: Mon, 2 Jun 2014 16:58:35 +0300 Subject: [PATCH] Eolian: Fix class look up. If a class (e.g Evas_Object) is expected as a base class but is not present in the existing expected file (e.g evas_object.eo), it will not fail. This patch fixes it by checking the existence of the class into the database after the parsing of the file. @fix --- src/lib/eolian/eolian_database.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/lib/eolian/eolian_database.c b/src/lib/eolian/eolian_database.c index 1ef535d793..5ef7804702 100644 --- a/src/lib/eolian/eolian_database.c +++ b/src/lib/eolian/eolian_database.c @@ -1414,10 +1414,15 @@ EAPI Eina_Bool eolian_eo_file_parse(const char *filepath) filepath = eina_hash_find(_filenames, filename); if (!filepath) { - ERR("Unable to find class %s", inherit_name); + ERR("Unable to find a file for class %s", inherit_name); return EINA_FALSE; } if (!eolian_eo_file_parse(filepath)) return EINA_FALSE; + if (!eolian_class_find_by_name(inherit_name)) + { + ERR("Unable to find class %s", inherit_name); + return EINA_FALSE; + } free(filename); } }