From 364d0c3ed0e3c59282bd22a7b5e3b1e4ccaa67b0 Mon Sep 17 00:00:00 2001 From: Anton Leherbauer Date: Mon, 11 May 2009 12:57:30 +0000 Subject: [PATCH] [275646] [view model] DefaultVMContentProviderStrategy does not consider unlimited update range --- .../DefaultVMContentProviderStrategy.java | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/ui/viewmodel/DefaultVMContentProviderStrategy.java b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/ui/viewmodel/DefaultVMContentProviderStrategy.java index c5f0ccf12df..2d162305efc 100644 --- a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/ui/viewmodel/DefaultVMContentProviderStrategy.java +++ b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/ui/viewmodel/DefaultVMContentProviderStrategy.java @@ -299,10 +299,18 @@ public class DefaultVMContentProviderStrategy implements IElementContentProvider int multiRmCount = 0; // Iterate through all child nodes and if requested range matches, call - // them to - // get their elements. + // them to get their elements. int updateStartIdx = update.getOffset(); - int updateEndIdx = update.getOffset() + update.getLength(); + if (updateStartIdx < 0) { + updateStartIdx = 0; + } + int updateEndIdx; + int length = update.getLength(); + if (length <= 0) { + updateEndIdx = Integer.MAX_VALUE; + } else { + updateEndIdx = updateStartIdx + length; + } int idx = 0; IVMNode[] nodes = getVMProvider().getChildVMNodes(node); for (int i = 0; i < nodes.length; i++) {