X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=formats%2Fctf%2Fmetadata%2Fctf-visitor-generate-io-struct.c;h=fe0b6b4d9ed8db460cc9d5152d5e9a16805130a8;hb=d98b7fc59c96a1b5fec3a7e9d7c265bae03727a2;hp=a18f762c9b189b53aee0e58035e192499ea29957;hpb=fb685383bf146295d5dce1ffb0369d9d063e168c;p=babeltrace.git diff --git a/formats/ctf/metadata/ctf-visitor-generate-io-struct.c b/formats/ctf/metadata/ctf-visitor-generate-io-struct.c index a18f762c..fe0b6b4d 100644 --- a/formats/ctf/metadata/ctf-visitor-generate-io-struct.c +++ b/formats/ctf/metadata/ctf-visitor-generate-io-struct.c @@ -1158,12 +1158,16 @@ struct bt_declaration *ctf_declaration_type_specifier_visit(FILE *fd, int depth, str = g_string_new(""); ret = visit_type_specifier_list(fd, type_specifier_list, str); - if (ret) + if (ret) { + (void) g_string_free(str, TRUE); return NULL; + } str_c = g_string_free(str, FALSE); id_q = g_quark_from_string(str_c); g_free(str_c); declaration = bt_lookup_declaration(id_q, declaration_scope); + if (!declaration) + return NULL; bt_declaration_ref(declaration); return declaration; }