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 cdb94d88b86..5312b6a292b 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 @@ -182,7 +182,7 @@ public class CThread extends CDebugElement implements ICThread, IRestart, IResum int diff = depth - getLastStackDepth(); int offset = ( diff > 0 ) ? frames.length - diff : 0; int length = ( diff > 0 ) ? diff : -diff; - if ( !compareStackFrames( frames, fStackFrames, offset, length ) ) { + if (offset < 0 || !compareStackFrames( frames, fStackFrames, offset, length ) ) { // replace all frames disposeStackFrames( 0, fStackFrames.size() ); addStackFrames( frames, 0, frames.length, false );