diff --git a/debug/org.eclipse.cdt.debug.core/ChangeLog b/debug/org.eclipse.cdt.debug.core/ChangeLog index 958a13b37fb..b2bcaf51fc5 100644 --- a/debug/org.eclipse.cdt.debug.core/ChangeLog +++ b/debug/org.eclipse.cdt.debug.core/ChangeLog @@ -1,3 +1,7 @@ +2005-01-04 Mikhail Khodjaiants + Fix for bug 82184: arrayboundsexception on display of array variable. + * CIndexedValue.java + 2004-12-23 Mikhail Khodjaiants Cleanup. * CMemoryBlockExtension.java diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CIndexedValue.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CIndexedValue.java index 19b2a40172c..050920a27dd 100644 --- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CIndexedValue.java +++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CIndexedValue.java @@ -223,7 +223,7 @@ public class CIndexedValue extends AbstractCValue implements IIndexedValue { private IVariable[] getVariables0( int offset, int length ) throws DebugException { IVariable[] result = new IVariable[length]; int firstIndex = getPartitionIndex( offset ); - int lastIndex = getPartitionIndex( offset + length ); + int lastIndex = getPartitionIndex( offset + Math.max( length - 1, 0 ) ); for ( int i = firstIndex; i <= lastIndex; ++i ) { synchronized( this ) { if ( !isPartitionLoaded( i ) ) {