From 373fc80fa468d142e319a41354e46ae0d938d85e Mon Sep 17 00:00:00 2001 From: Gabriel Ionita Date: Mon, 27 Oct 2025 19:50:00 +0100 Subject: [PATCH] add integer type validation --- src/symbol.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/symbol.cpp b/src/symbol.cpp index 52715d8..e1f19fd 100644 --- a/src/symbol.cpp +++ b/src/symbol.cpp @@ -261,6 +261,14 @@ std::optional Symbol::find_global_var(Dwarf_Debug dbg, const std::strin if (dwarf_diename(child_die, &name, &err) == DW_DLV_OK && name) { if (var_name == name) { + // Check if this is an integer type + if (!is_integer_type(dbg, child_die)) { + dwarf_dealloc(dbg, name, DW_DLA_STRING); + dwarf_dealloc(dbg, child_die, DW_DLA_DIE); + dwarf_dealloc(dbg, cu_die, DW_DLA_DIE); + return std::nullopt; + } + Dwarf_Addr addr = get_global_var_addr(dbg, child_die); size_t size = get_var_size(dbg, child_die);