changeset 2290:1cfdec4e7f07

fixed crash with PrintAssembly: RelocIterator limit outside of code area
author Lukas Stadler <lukas.stadler@jku.at>
date Mon, 11 Apr 2011 12:15:32 +0200
parents 6190d20bd6d6
children 12846d31d7ec
files src/share/vm/code/nmethod.cpp
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/code/nmethod.cpp	Mon Apr 11 11:25:06 2011 +0200
+++ b/src/share/vm/code/nmethod.cpp	Mon Apr 11 12:15:32 2011 +0200
@@ -1903,7 +1903,7 @@
 
 
 oop nmethod::embeddedOop_at(u_char* p) {
-  RelocIterator iter(this, p, p + oopSize);
+  RelocIterator iter(this, p, MIN2(p + oopSize, code_end()));
   while (iter.next())
     if (iter.type() == relocInfo::oop_type) {
       return iter.oop_reloc()->oop_value();