From 35f77de41f6bde3e626605c70ae7195952b638a1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=A9mie=20Galarneau?= Date: Mon, 30 May 2016 02:26:04 -0400 Subject: [PATCH 1/1] Fix: validate return value of bt_ctf_field_get_type_id MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Reported by Coverity as CID 1351739 (#1 of 1): Unchecked return value (CHECKED_RETURN) Signed-off-by: Jérémie Galarneau --- formats/ctf/ir/fields.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/formats/ctf/ir/fields.c b/formats/ctf/ir/fields.c index 123c3153..105dd7a1 100644 --- a/formats/ctf/ir/fields.c +++ b/formats/ctf/ir/fields.c @@ -2339,12 +2339,19 @@ void bt_ctf_field_sequence_freeze(struct bt_ctf_field *field) BT_HIDDEN void bt_ctf_field_freeze(struct bt_ctf_field *field) { + enum bt_ctf_type_id type_id; + if (!field) { goto end; } - field_freeze_funcs[bt_ctf_field_get_type_id(field)](field); + type_id = bt_ctf_field_get_type_id(field); + if (type_id <= BT_CTF_TYPE_ID_UNKNOWN || + type_id >= BT_CTF_NR_TYPE_IDS) { + goto end; + } + field_freeze_funcs[type_id](field); end: return; } -- 2.34.1