2010-11-09 Francois Chouinard <fchouinard@gmail.com> Fix for Bug329764
authorFrancois Chouinard <fchouinard@gmail.com>
Tue, 9 Nov 2010 16:28:57 +0000 (16:28 +0000)
committerFrancois Chouinard <fchouinard@gmail.com>
Tue, 9 Nov 2010 16:28:57 +0000 (16:28 +0000)
    * src/org/eclipse/linuxtools/lttng/trace/LTTngExperiment.java (getNextEvent): Fix for NullPointerException
    * src/org/eclipse/linuxtools/tmf/experiment/TmfExperiment.java (getNextEvent): Fix for NullPointerException

org.eclipse.linuxtools.lttng/ChangeLog
org.eclipse.linuxtools.lttng/src/org/eclipse/linuxtools/lttng/trace/LTTngExperiment.java
org.eclipse.linuxtools.tmf/ChangeLog
org.eclipse.linuxtools.tmf/src/org/eclipse/linuxtools/tmf/experiment/TmfExperiment.java

index 073b3b0459c8c997e061c0725c4e97f4b75e038e..7137f2f14a142e144ee138249013b68504455f6d 100644 (file)
@@ -1,5 +1,7 @@
 2010-11-09  Francois Chouinard  <fchouinard@gmail.com>
 
+    * src/org/eclipse/linuxtools/lttng/trace/LTTngExperiment.java (getNextEvent): Fix for NullPointerException
+
     Suppress warning for non-externalized strings
           * src/org/eclipse/linuxtools/lttng/event/LttngEvent.java (toString):
           * src/org/eclipse/linuxtools/lttng/event/LttngEventContent.java (toString): 
@@ -18,6 +20,8 @@
           * src/org/eclipse/linuxtools/lttng/state/model/LttngTrapState.java (toString): 
           * src/org/eclipse/linuxtools/lttng/state/trace/StateTraceManager.java (toString): 
           * src/org/eclipse/linuxtools/lttng/trace/LTTngExperiment.java (toString): 
+           (LTTngExperiment): 
+              (getNextEvent): Fix for Bug329764
           * src/org/eclipse/linuxtools/lttng/trace/LTTngTrace.java (toString): 
           * src/org/eclipse/linuxtools/lttng/trace/LTTngTraceVersion.java (toString): 
           * src/org/eclipse/linuxtools/lttng/TraceDebug.java: 
index 612b89b7e51759e3a849ff73ef1c91c6909c918a..186c04f4ace747fa3fdaccc64bbd7e4a8b1030d1 100644 (file)
@@ -70,7 +70,7 @@ public class LTTngExperiment<T extends TmfEvent> extends TmfExperiment<T> implem
     }
     
     public LTTngExperiment(LTTngExperiment<T> other) {
-       super(other.getName() + "(clone)", other.fType);
+       super(other.getName() + "(clone)", other.fType); //$NON-NLS-1$
        
        fEpoch         = other.fEpoch;
        fIndexPageSize = other.fIndexPageSize;
@@ -128,8 +128,10 @@ public class LTTngExperiment<T extends TmfEvent> extends TmfExperiment<T> implem
                int trace = TmfExperimentContext.NO_TRACE;
                TmfTimestamp timestamp = TmfTimestamp.BigCrunch;
                if (eventArray.length == 1) {
-                       timestamp = eventArray[0].getTimestamp();
-                       trace = 0;
+                   if (eventArray[0] != null) {
+                       timestamp = eventArray[0].getTimestamp();
+                       trace = 0;
+                   }
                } else {
                        for (int i = 0; i < eventArray.length; i++) {
                                TmfEvent event = eventArray[i];
index 2095112ba9a4044812d7ce2362bbbdec9b61a44d..6db2f6d4e29792f19f07cdd0166930ad641f0049 100644 (file)
@@ -1,5 +1,7 @@
 2010-11-09  Francois Chouinard  <fchouinard@gmail.com>
 
+    * src/org/eclipse/linuxtools/tmf/experiment/TmfExperiment.java (getNextEvent): Fix for NullPointerException
+
     Suppress warning for non-externalized strings
           * src/org/eclipse/linuxtools/tmf/component/TmfDataProvider.java (newCoalescedDataRequest): 
               (coalesceDataRequest): 
index 63c096c2d26f80bc207750858efada088db1c6b9..f7c206c31981aead656606e3ec44680a34a2b462 100644 (file)
@@ -501,20 +501,30 @@ public class TmfExperiment<T extends TmfEvent> extends TmfEventProvider<T> imple
                }
 
                // Scan the candidate events and identify the "next" trace to read from 
+        TmfEvent eventArray[] =  expContext.getEvents();
+        if (eventArray == null) {
+            return null;
+        }
                int trace = TmfExperimentContext.NO_TRACE;
                TmfTimestamp timestamp = TmfTimestamp.BigCrunch;
-               for (int i = 0; i < expContext.getTraces().length; i++) {
-                       TmfEvent event = expContext.getEvents()[i];
-                       if (event != null && event.getTimestamp() != null) {
-                               TmfTimestamp otherTS = event.getTimestamp();
-                               if (otherTS.compareTo(timestamp, true) < 0) {
-                                       trace = i;
-                                       timestamp = otherTS;
-                               }
-                       }
+        if (eventArray.length == 1) {
+            if (eventArray[0] != null) {
+                timestamp = eventArray[0].getTimestamp();
+                trace = 0;
+            }
+        } else {
+            for (int i = 0; i < eventArray.length; i++) {
+                TmfEvent event = eventArray[i];
+                if (event != null && event.getTimestamp() != null) {
+                    TmfTimestamp otherTS = event.getTimestamp();
+                    if (otherTS.compareTo(timestamp, true) < 0) {
+                        trace = i;
+                        timestamp = otherTS;
+                    }
+                }
+            }
                }
-
-               // Update the experiment context and set the "next" event
+        // Update the experiment context and set the "next" event
                TmfEvent event = null;
                if (trace != TmfExperimentContext.NO_TRACE) {
                updateIndex(expContext, timestamp);
This page took 0.028906 seconds and 5 git commands to generate.