[PATCH] debugedit: Don't hang on DW_FORM_strx references
Luís Ferreira
contact@lsferreira.net
Thu Nov 10 18:17:59 GMT 2022
Compilers that generate DWARF5 can write to .debug_info a DW_FORM_strx
reference. The code seem to handle it but hangs on the abbreviation
sanity check.
Signed-off-by: Luís Ferreira <contact@lsferreira.net>
---
tools/debugedit.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/tools/debugedit.c b/tools/debugedit.c
index d82ae5a..4450b34 100644
--- a/tools/debugedit.c
+++ b/tools/debugedit.c
@@ -778,12 +778,17 @@ no_memory:
|| form == DW_FORM_line_strp
|| form == DW_FORM_implicit_const
|| form == DW_FORM_addrx
+ || form == DW_FORM_strx
|| form == DW_FORM_loclistx
|| form == DW_FORM_rnglistx
|| form == DW_FORM_addrx1
|| form == DW_FORM_addrx2
|| form == DW_FORM_addrx3
- || form == DW_FORM_addrx4)))
+ || form == DW_FORM_addrx4
+ || form == DW_FORM_strx1
+ || form == DW_FORM_strx2
+ || form == DW_FORM_strx3
+ || form == DW_FORM_strx4)))
{
error (0, 0, "%s: Unknown DWARF DW_FORM_0x%x", dso->filename,
form);
--
2.38.1
More information about the Debugedit
mailing list