summaryrefslogtreecommitdiffstats
path: root/libcpu/i386_disasm.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2008-01-04 21:42:14 +0000
committerUlrich Drepper <drepper@redhat.com>2008-01-04 21:42:14 +0000
commit9e6925dd43d4e6572b69194232f6152f232e737d (patch)
treeb256a473f7ce26dbbd6bd73fc085624488f3c9a2 /libcpu/i386_disasm.c
parentfea4e9d82a0bca499ee41ff6943518c0034e8c6d (diff)
downloadandroid_external_elfutils-9e6925dd43d4e6572b69194232f6152f232e737d.tar.gz
android_external_elfutils-9e6925dd43d4e6572b69194232f6152f232e737d.tar.bz2
android_external_elfutils-9e6925dd43d4e6572b69194232f6152f232e737d.zip
Add remaining Intel x86 opcodes.
Diffstat (limited to 'libcpu/i386_disasm.c')
-rw-r--r--libcpu/i386_disasm.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libcpu/i386_disasm.c b/libcpu/i386_disasm.c
index d52498ba..a9edcffd 100644
--- a/libcpu/i386_disasm.c
+++ b/libcpu/i386_disasm.c
@@ -420,6 +420,9 @@ i386_disasm (const uint8_t **startp, const uint8_t *end, GElf_Addr addr,
param_start += 4;
else if ((modrm & 0xc0) == 0x40)
param_start += 1;
+
+ if (unlikely (param_start > end))
+ goto not;
}
unsigned long string_end_idx = 0;