eolian: deferred parsing of type deps
authorDaniel Kolesa <d.kolesa@osg.samsung.com>
Fri, 22 Dec 2017 11:53:51 +0000 (12:53 +0100)
committerWonki Kim <wonki_.kim@samsung.com>
Wed, 10 Jan 2018 11:08:13 +0000 (20:08 +0900)
src/lib/eolian/eo_parser.c

index 556ac70..f9f3c51 100644 (file)
@@ -824,12 +824,12 @@ parse_type_void(Eo_Lexer *ls)
                {
                   const char *fname = eina_hash_find(ls->state->filenames_eo, fnm);
                   eina_stringshare_del(bnm);
-                  free(fnm);
                   if (fname)
                     {
-                       _parse_dep(ls, fname, nm);
+                       eina_hash_set(ls->state->defer, fnm, fname);
                        def->type = EOLIAN_TYPE_CLASS;
                     }
+                  free(fnm);
                }
              else
                {