tmf: Bug 494197: Empty event list for CallStackEntry when no process
[deliverable/tracecompass.git] / tmf / org.eclipse.tracecompass.tmf.ui / src / org / eclipse / tracecompass / tmf / ui / views / callstack / CallStackView.java
index 43286766e5b02bdacc8a284634c571c6d6b60b02..8e915d84a86f8926d582a220450181bafe6e18e7 100644 (file)
@@ -693,16 +693,21 @@ public class CallStackView extends AbstractTimeGraphView {
                 refresh();
             }
 
-            for (ITimeGraphEntry processEntry : traceEntry.getChildren()) {
-                for (ITimeGraphEntry threadEntry : processEntry.getChildren()) {
-                    for (ITimeGraphEntry callStackEntry : threadEntry.getChildren()) {
-                        if (monitor.isCanceled()) {
-                            return;
-                        }
-                        buildStatusEvents(parentTrace, (CallStackEntry) callStackEntry, monitor, ss.getStartTime(), end);
+            Consumer<TimeGraphEntry> consumer = new Consumer<TimeGraphEntry>() {
+                @Override
+                public void accept(TimeGraphEntry entry) {
+                    if (monitor.isCanceled()) {
+                        return;
                     }
+                    if (entry instanceof CallStackEntry) {
+                        buildStatusEvents(parentTrace, (CallStackEntry) entry, monitor, ss.getStartTime(), end);
+                        return;
+                    }
+                    entry.getChildren().forEach(this);
                 }
-            }
+            };
+            traceEntry.getChildren().forEach(consumer);
+
             start = end;
         }
     }
This page took 0.025494 seconds and 5 git commands to generate.