Eolian_Class *cl;
Eo_Lexer *ls;
- if (eot && eina_hash_find(_parsedeots, filename))
+ if (eina_hash_find(_parsedeos, filename))
return EINA_TRUE;
eina_hash_set(_parsingeos, filename, (void *)EINA_TRUE);
eina_iterator_free(itr);
done:
- if (eot)
- eina_hash_set(_parsedeots, filename, (void *)EINA_TRUE);
+ eina_hash_set(_parsedeos, filename, (void *)EINA_TRUE);
eina_hash_set(_parsingeos, filename, (void *)EINA_FALSE);
eo_lexer_free(ls);
Eina_Hash *_tfilenames = NULL;
Eina_Hash *_decls = NULL;
-Eina_Hash *_parsedeots = NULL;
+Eina_Hash *_parsedeos = NULL;
Eina_Hash *_parsingeos = NULL;
static int _database_init_count = 0;
_filenames = eina_hash_string_small_new(free);
_tfilenames = eina_hash_string_small_new(free);
_decls = eina_hash_stringshared_new(free);
- _parsedeots = eina_hash_string_small_new(NULL);
+ _parsedeos = eina_hash_string_small_new(NULL);
_parsingeos = eina_hash_string_small_new(NULL);
return ++_database_init_count;
}
eina_hash_free(_filenames ); _filenames = NULL;
eina_hash_free(_tfilenames); _tfilenames = NULL;
eina_hash_free(_decls ); _decls = NULL;
- eina_hash_free(_parsedeots); _parsedeots = NULL;
+ eina_hash_free(_parsedeos ); _parsedeos = NULL;
eina_hash_free(_parsingeos); _parsingeos = NULL;
eina_shutdown();
}
EAPI Eina_Bool
eolian_eo_file_parse(const char *filepath)
{
- char *bfiledup, *bfilename;
-
if (_database_init_count <= 0)
return EINA_FALSE;
-
- bfiledup = strdup(filepath);
- bfilename = basename(bfiledup);
- if (!eolian_class_get_by_file(bfilename) && !eo_parser_database_fill(filepath, EINA_FALSE))
- {
- free(bfiledup);
- goto error;
- }
- free(bfiledup);
- return EINA_TRUE;
-
-error:
- return EINA_FALSE;
+ return eo_parser_database_fill(filepath, EINA_FALSE);
}
static Eina_Bool _tfile_parse(const Eina_Hash *hash EINA_UNUSED, const void *key EINA_UNUSED, void *data, void *fdata)
extern Eina_Hash *_decls;
/* holds parsed/currently parsing eot files to keep track */
-extern Eina_Hash *_parsedeots;
+extern Eina_Hash *_parsedeos;
extern Eina_Hash *_parsingeos;
typedef struct _Eolian_Object