diff --git a/debug/org.eclipse.cdt.debug.core/ChangeLog b/debug/org.eclipse.cdt.debug.core/ChangeLog index fb7a6499ed1..b2d7883eab7 100644 --- a/debug/org.eclipse.cdt.debug.core/ChangeLog +++ b/debug/org.eclipse.cdt.debug.core/ChangeLog @@ -1,3 +1,8 @@ +2005-12-16 Mikhail Khodjaiants + Bug 118809: Failure to evaluate stack frame. + Previous fix didn't work for stack depths > 100. + * CThread.java + 2005-12-08 Mikhail Khodjaiants Bug 118809: Failure to evaluate stack frame. * CThread.java diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CThread.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CThread.java index d39b4e65341..d2153050fe8 100644 --- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CThread.java +++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CThread.java @@ -152,7 +152,9 @@ public class CThread extends CDebugElement implements ICThread, IRestart, IResum } // Retrieve stack frames from the backend int depth = getStackDepth(); - ICDIStackFrame[] frames = ( depth != 0 ) ? getCDIStackFrames( 0, ( depth >= getMaxStackDepth() ) ? getMaxStackDepth() - 1 : depth ) : new ICDIStackFrame[0]; + if ( depth >= getMaxStackDepth() ) + depth = getMaxStackDepth() - 1; + ICDIStackFrame[] frames = ( depth != 0 ) ? getCDIStackFrames( 0, depth ) : new ICDIStackFrame[0]; if ( fStackFrames.isEmpty() ) { if ( frames.length > 0 ) {