diff --git a/Ghidra/Debug/Debugger-agent-lldb/data/support/lldbsetuputils.ps1 b/Ghidra/Debug/Debugger-agent-lldb/data/support/lldbsetuputils.ps1 index 9fcff22d92..5f047f6205 100644 --- a/Ghidra/Debug/Debugger-agent-lldb/data/support/lldbsetuputils.ps1 +++ b/Ghidra/Debug/Debugger-agent-lldb/data/support/lldbsetuputils.ps1 @@ -86,7 +86,9 @@ function Add-Lldb-Extra-Cmds { function Add-Lldb-Tail-Args { param([ref]$ArgList) - # NOP + + $ArgList.Value+=("-o", "`"ghidra trace sync-enable`"") + $ArgList.Value+=("-o", "`"ghidra trace sync-synth-stopped`"") } function Compute-Lldb-Usermode-Args { diff --git a/Ghidra/Debug/Debugger-agent-lldb/data/support/lldbsetuputils.sh b/Ghidra/Debug/Debugger-agent-lldb/data/support/lldbsetuputils.sh index a7f65f2b00..0211b02639 100644 --- a/Ghidra/Debug/Debugger-agent-lldb/data/support/lldbsetuputils.sh +++ b/Ghidra/Debug/Debugger-agent-lldb/data/support/lldbsetuputils.sh @@ -82,6 +82,8 @@ add-lldb-extra-cmds() { } add-lldb-tail-args() { + args+=(-o "ghidra trace sync-enable") + args+=(-o "ghidra trace sync-synth-stopped") true } diff --git a/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/AbstractLldbTraceRmiTest.java b/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/AbstractLldbTraceRmiTest.java index b97d79024d..b3a5ada3aa 100644 --- a/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/AbstractLldbTraceRmiTest.java +++ b/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/AbstractLldbTraceRmiTest.java @@ -255,7 +255,7 @@ public abstract class AbstractLldbTraceRmiTest extends AbstractGhidraHeadedDebug return new LldbResult(false, exitVal, capture.toString()); } catch (TimeoutException e) { - return new LldbResult(true, -1, capture.toString()); + return new LldbResult(true, 0, capture.toString()); } catch (Exception e) { return ExceptionUtils.rethrow(e); diff --git a/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/LldbHooksTest.java b/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/LldbHooksTest.java index 4aef773004..a221f80453 100644 --- a/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/LldbHooksTest.java +++ b/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/LldbHooksTest.java @@ -444,6 +444,8 @@ public class LldbHooksTest extends AbstractLldbTraceRmiTest { conn.execute("file " + obj); conn.execute("ghidra trace sync-enable"); conn.execute("process launch --stop-at-entry"); + conn.execute("ghidra trace sync-enable"); + conn.execute("ghidra trace sync-synth-stopped"); txPut(conn, "processes"); } diff --git a/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/LldbMethodsTest.java b/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/LldbMethodsTest.java index 02f9ee37ce..43db811331 100644 --- a/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/LldbMethodsTest.java +++ b/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/LldbMethodsTest.java @@ -28,6 +28,7 @@ import org.junit.experimental.categories.Category; import generic.Unique; import generic.test.category.NightlyCategory; +import generic.test.rule.Repeated; import ghidra.app.plugin.core.debug.utils.ManagedDomainObject; import ghidra.debug.api.tracermi.RemoteMethod; import ghidra.framework.OperatingSystem; @@ -1173,6 +1174,8 @@ public class LldbMethodsTest extends AbstractLldbTraceRmiTest { conn.execute("file " + obj); conn.execute("ghidra trace start"); conn.execute("process launch --stop-at-entry"); + conn.execute("ghidra trace sync-enable"); + conn.execute("ghidra trace sync-synth-stopped"); } private void txPut(LldbAndConnection conn, String obj) {