diff options
author | Daniel Kolesa <d.kolesa@samsung.com> | 2020-04-20 14:36:14 +0200 |
---|---|---|
committer | Daniel Kolesa <d.kolesa@samsung.com> | 2020-04-20 14:36:14 +0200 |
commit | bbc006a3e72d323e73bb77ee546fd8f0f6d741a6 (patch) | |
tree | cbdab88aae5c066f85f5ecf7a8b0391433b0d4e1 | |
parent | e565e989eee5846bc121ddff80ca75c3642d3427 (diff) | |
download | efl-bbc006a3e72d323e73bb77ee546fd8f0f6d741a6.tar.gz |
eolian: fix C type serialization of error()
-rw-r--r-- | src/lib/eolian/database_type.c | 2 | ||||
-rw-r--r-- | src/tests/eolian/eolian_parsing.c | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/lib/eolian/database_type.c b/src/lib/eolian/database_type.c index 53d531cc54..0df427bf62 100644 --- a/src/lib/eolian/database_type.c +++ b/src/lib/eolian/database_type.c @@ -121,6 +121,8 @@ database_type_to_str(const Eolian_Type *tp, else eina_strbuf_append(buf, tp->base.c_name); } + else if (tp->type == EOLIAN_TYPE_ERROR) + eina_strbuf_append(buf, "Eina_Error"); else if (tp->type == EOLIAN_TYPE_VOID) eina_strbuf_append(buf, "void"); else if (tp->type == EOLIAN_TYPE_UNDEFINED) diff --git a/src/tests/eolian/eolian_parsing.c b/src/tests/eolian/eolian_parsing.c index 60e24bda41..ae213b5a28 100644 --- a/src/tests/eolian/eolian_parsing.c +++ b/src/tests/eolian/eolian_parsing.c @@ -805,6 +805,7 @@ EFL_START_TEST(eolian_error) const Eolian_Function *f1, *f2; const Eolian_Type *rtp1, *rtp2; const Eolian_Error *err1, *err2; + Eina_Stringshare *str; Eolian_State *eos = eolian_state_new(); @@ -822,6 +823,9 @@ EFL_START_TEST(eolian_error) fail_if(eolian_type_type_get(rtp1) != EOLIAN_TYPE_ERROR); fail_if(eolian_type_next_type_get(rtp1) != NULL); fail_if(strcmp(eolian_type_name_get(rtp1), "Foo")); + fail_if(!(str = eolian_type_c_type_get(rtp1))); + fail_if(strcmp(str, "Eina_Error")); + eina_stringshare_del(str); fail_if(!(err1 = eolian_type_error_get(rtp1))); fail_if(strcmp(eolian_error_message_get(err1), "something bad happened")); |