diff options
-rw-r--r-- | addr2line.c | 24 |
1 files changed, 19 insertions, 5 deletions
@@ -1124,6 +1124,20 @@ get_cstr_value(DebugInfoValue *v) } } static void debug_info_reader_read_value(DebugInfoReader *reader, uint64_t form, DebugInfoValue *v) { @@ -1236,7 +1250,7 @@ debug_info_reader_read_value(DebugInfoReader *reader, uint64_t form, DebugInfoVa set_uint_value(v, 1); break; case DW_FORM_strx: - set_uint_value(v, uleb128(&reader->p)); break; case DW_FORM_addrx: set_addr_idx_value(v, uleb128(&reader->p)); @@ -1272,16 +1286,16 @@ debug_info_reader_read_value(DebugInfoReader *reader, uint64_t form, DebugInfoVa set_uint_value(v, read_uint64(&reader->p)); break; case DW_FORM_strx1: - set_uint_value(v, read_uint8(&reader->p)); break; case DW_FORM_strx2: - set_uint_value(v, read_uint16(&reader->p)); break; case DW_FORM_strx3: - set_uint_value(v, read_uint24(&reader->p)); break; case DW_FORM_strx4: - set_uint_value(v, read_uint32(&reader->p)); break; case DW_FORM_addrx1: set_addr_idx_value(v, read_uint8(&reader->p)); |