From cdc32441b2c96aab6e1ed5e54cc287cefad6266b Mon Sep 17 00:00:00 2001 From: Dan <46821332+nsadeveloper789@users.noreply.github.com> Date: Fri, 18 Apr 2025 13:12:13 +0000 Subject: [PATCH] GP-0: Fix several tests from GP-5523. --- .../gui/model/columns/TracePathLastLifespanColumn.java | 2 +- .../debug/gui/model/columns/TraceValueLifeColumn.java | 3 ++- .../debug/gui/pcode/DebuggerPcodeStepperProvider.java | 3 ++- .../core/debug/gui/time/DebuggerTimeProviderTest.java | 8 +++++--- 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/model/columns/TracePathLastLifespanColumn.java b/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/model/columns/TracePathLastLifespanColumn.java index 57b6a54fd1..955cc25983 100644 --- a/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/model/columns/TracePathLastLifespanColumn.java +++ b/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/model/columns/TracePathLastLifespanColumn.java @@ -78,7 +78,7 @@ public class TracePathLastLifespanColumn public SpanAndRadix getValue(PathRow rowObject, Settings settings, Trace data, ServiceProvider serviceProvider) throws IllegalArgumentException { TraceObjectValue lastEntry = rowObject.getPath().getLastEntry(); - TimeRadix radix = data.getTimeManager().getTimeRadix(); + TimeRadix radix = data == null ? TimeRadix.DEFAULT : data.getTimeManager().getTimeRadix(); if (lastEntry == null) { return new SpanAndRadix(Lifespan.ALL, radix); } diff --git a/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/model/columns/TraceValueLifeColumn.java b/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/model/columns/TraceValueLifeColumn.java index 30ddb822b4..6e3536871b 100644 --- a/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/model/columns/TraceValueLifeColumn.java +++ b/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/model/columns/TraceValueLifeColumn.java @@ -50,6 +50,7 @@ public class TraceValueLifeColumn @Override public SetAndRadix getValue(ValueRow rowObject, Settings settings, Trace data, ServiceProvider serviceProvider) throws IllegalArgumentException { - return new SetAndRadix(rowObject.getLife(), data.getTimeManager().getTimeRadix()); + return new SetAndRadix(rowObject.getLife(), + data == null ? TimeRadix.DEFAULT : data.getTimeManager().getTimeRadix()); } } diff --git a/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/pcode/DebuggerPcodeStepperProvider.java b/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/pcode/DebuggerPcodeStepperProvider.java index c727bc396e..59170505f9 100644 --- a/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/pcode/DebuggerPcodeStepperProvider.java +++ b/Ghidra/Debug/Debugger/src/main/java/ghidra/app/plugin/core/debug/gui/pcode/DebuggerPcodeStepperProvider.java @@ -733,7 +733,8 @@ public class DebuggerPcodeStepperProvider extends ComponentProviderAdapter { } protected void updateSubTitle() { - TimeRadix radix = current.getTrace().getTimeManager().getTimeRadix(); + TimeRadix radix = current.getTrace() == null ? TimeRadix.DEFAULT + : current.getTrace().getTimeManager().getTimeRadix(); setSubTitle(current.getTime().toString(radix)); } diff --git a/Ghidra/Debug/Debugger/src/test/java/ghidra/app/plugin/core/debug/gui/time/DebuggerTimeProviderTest.java b/Ghidra/Debug/Debugger/src/test/java/ghidra/app/plugin/core/debug/gui/time/DebuggerTimeProviderTest.java index eefe9fadaa..322344d6d9 100644 --- a/Ghidra/Debug/Debugger/src/test/java/ghidra/app/plugin/core/debug/gui/time/DebuggerTimeProviderTest.java +++ b/Ghidra/Debug/Debugger/src/test/java/ghidra/app/plugin/core/debug/gui/time/DebuggerTimeProviderTest.java @@ -34,6 +34,7 @@ import ghidra.trace.database.time.DBTraceTimeManager; import ghidra.trace.model.thread.TraceThread; import ghidra.trace.model.time.TraceSnapshot; import ghidra.trace.model.time.schedule.TraceSchedule; +import ghidra.util.DateUtils; public class DebuggerTimeProviderTest extends AbstractGhidraHeadedDebuggerTest { @@ -80,13 +81,14 @@ public class DebuggerTimeProviderTest extends AbstractGhidraHeadedDebuggerTest { SnapshotRow firstRow = snapsDisplayed.get(0); assertEquals(0, firstRow.getSnap()); assertEquals("First", firstRow.getDescription()); - assertEquals("0", firstRow.getSchedule()); // Snap 0 has "0" schedule - assertEquals("Jan 01, 2020 09:00 AM", firstRow.getTimeStamp()); + assertEquals("0", firstRow.getSchedule().toString()); // Snap 0 has "0" schedule + assertEquals("Jan 01, 2020 09:00 AM", + DateUtils.formatDateTimestamp(firstRow.getTimeStamp())); SnapshotRow secondRow = snapsDisplayed.get(1); assertEquals(10, secondRow.getSnap()); assertEquals("Snap 10", secondRow.getDescription()); - assertEquals("0:5;t1-5", secondRow.getSchedule()); + assertEquals("0:5;t1-5", secondRow.getSchedule().toString()); // Timestamp is left unchecked, since default is current time }