diff options
author | Eugene Tarassov | 2013-12-05 23:48:32 +0000 |
---|---|---|
committer | Eugene Tarassov | 2013-12-05 23:48:32 +0000 |
commit | 84aa40720eb2a14845370fbc11825291dcd96a5c (patch) | |
tree | eec667f88d3fc90c3f37df4e06005f067a532828 | |
parent | 17be99a5899f65076edd861c8ea0090e9a1a2234 (diff) | |
download | org.eclipse.tcf-84aa40720eb2a14845370fbc11825291dcd96a5c.tar.gz org.eclipse.tcf-84aa40720eb2a14845370fbc11825291dcd96a5c.tar.xz org.eclipse.tcf-84aa40720eb2a14845370fbc11825291dcd96a5c.zip |
TCF Examples: fixed assertion failure
-rw-r--r-- | examples/org.eclipse.tcf.examples.filtering/src/org/eclipse/tcf/examples/filtering/PresentationFilter.java | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/examples/org.eclipse.tcf.examples.filtering/src/org/eclipse/tcf/examples/filtering/PresentationFilter.java b/examples/org.eclipse.tcf.examples.filtering/src/org/eclipse/tcf/examples/filtering/PresentationFilter.java index d699f508f..32b244d3e 100644 --- a/examples/org.eclipse.tcf.examples.filtering/src/org/eclipse/tcf/examples/filtering/PresentationFilter.java +++ b/examples/org.eclipse.tcf.examples.filtering/src/org/eclipse/tcf/examples/filtering/PresentationFilter.java @@ -169,26 +169,28 @@ public class PresentationFilter implements ITCFPresentationProvider { TCFChildren children_cache = exe_context.getChildren(); if (!children_cache.validate()) pending_cache = children_cache; - for (TCFNode node : children_cache.getData().values()) { - if (node instanceof TCFNodeExecContext && node.getModel().getActiveAction(node.getID()) == null) { - TCFNodeExecContext child = (TCFNodeExecContext) node; - TCFDataCache<IRunControl.RunControlContext> child_ctx_cache = child.getRunContext(); - if (!child_ctx_cache.validate()) { - pending_cache = child_ctx_cache; - continue; - } - IRunControl.RunControlContext child_ctx = child_ctx_cache.getData(); - if (child_ctx != null && child_ctx.hasState()) { - TCFDataCache<TCFContextState> child_state_cache = child.getState(); - if (!child_state_cache.validate()) { - pending_cache = child_state_cache; + if (pending_cache == null) { + for (TCFNode node : children_cache.getData().values()) { + if (node instanceof TCFNodeExecContext && node.getModel().getActiveAction(node.getID()) == null) { + TCFNodeExecContext child = (TCFNodeExecContext) node; + TCFDataCache<IRunControl.RunControlContext> child_ctx_cache = child.getRunContext(); + if (!child_ctx_cache.validate()) { + pending_cache = child_ctx_cache; continue; } - TCFContextState child_state = child_state_cache.getData(); - if (child_state != null && !child_state.is_suspended) continue; + IRunControl.RunControlContext child_ctx = child_ctx_cache.getData(); + if (child_ctx != null && child_ctx.hasState()) { + TCFDataCache<TCFContextState> child_state_cache = child.getState(); + if (!child_state_cache.validate()) { + pending_cache = child_state_cache; + continue; + } + TCFContextState child_state = child_state_cache.getData(); + if (child_state != null && !child_state.is_suspended) continue; + } } + list.add(node); } - list.add(node); } } |