diff options
Diffstat (limited to 'libdw/encoded-value.h')
-rw-r--r-- | libdw/encoded-value.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libdw/encoded-value.h b/libdw/encoded-value.h index d4e01924..4566ef96 100644 --- a/libdw/encoded-value.h +++ b/libdw/encoded-value.h @@ -196,10 +196,14 @@ read_encoded_value (const Dwarf_CFI *cache, uint8_t encoding, break; case DW_EH_PE_uleb128: + if (*p >= endp) + goto invalid_data; get_uleb128 (value, *p, endp); break; case DW_EH_PE_sleb128: + if (*p >= endp) + goto invalid_data; get_sleb128 (value, *p, endp); break; |