summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libdw/ChangeLog4
-rw-r--r--libdw/fde.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/libdw/ChangeLog b/libdw/ChangeLog
index 97f87da0..a348b7e2 100644
--- a/libdw/ChangeLog
+++ b/libdw/ChangeLog
@@ -1,3 +1,7 @@
+2010-02-02 Mark Wielaard <[email protected]>
+
+ * fde.c (intern_fde): Fix length check for sized_augmentation_data.
+
2010-01-07 Roland McGrath <[email protected]>
* dwarf_getcfi_elf.c (getcfi_phdr): Use elf_getphdrnum.
diff --git a/libdw/fde.c b/libdw/fde.c
index f38eed7e..c826114c 100644
--- a/libdw/fde.c
+++ b/libdw/fde.c
@@ -115,7 +115,7 @@ intern_fde (Dwarf_CFI *cache, const Dwarf_FDE *entry)
before its actual instruction stream. */
Dwarf_Word len;
get_uleb128 (len, fde->instructions);
- if ((Dwarf_Word) (fde->instructions_end < fde->instructions) < len)
+ if ((Dwarf_Word) (fde->instructions_end - fde->instructions) < len)
{
free (fde);
__libdw_seterrno (DWARF_E_INVALID_DWARF);