diff --git a/radare2 b/radare2 index 3e55b5f5..8255f2a9 160000 --- a/radare2 +++ b/radare2 @@ -1 +1 @@ -Subproject commit 3e55b5f57d3d8eb2c38e681f125e7b9517191fde +Subproject commit 8255f2a96ccb286cad4708affba26822512037a0 diff --git a/src/Cutter.cpp b/src/Cutter.cpp index 6bb9641c..2f51a3b9 100644 --- a/src/Cutter.cpp +++ b/src/Cutter.cpp @@ -923,7 +923,11 @@ void CutterCore::continueUntilDebug(QString offset) void CutterCore::continueUntilCall() { if (currentlyDebugging) { - cmd("dcc"); + if (currentlyEmulating) { + cmdEsil("aecc"); + } else { + cmd("dcc"); + } QString programCounterValue = cmd("dr?`drn PC`").trimmed(); seek(programCounterValue); emit registersChanged(); diff --git a/src/widgets/DebugToolbar.cpp b/src/widgets/DebugToolbar.cpp index ab0e0210..5457e099 100644 --- a/src/widgets/DebugToolbar.cpp +++ b/src/widgets/DebugToolbar.cpp @@ -74,7 +74,6 @@ DebugToolbar::DebugToolbar(MainWindow *main, QWidget *parent) : actionStartEmul->setVisible(true); actionAttach->setVisible(true); actionContinueUntilMain->setVisible(true); - actionContinueUntilCall->setVisible(true); this->colorToolbar(false); }); connect(actionStep, &QAction::triggered, Core(), &CutterCore::stepDebug); @@ -99,7 +98,6 @@ DebugToolbar::DebugToolbar(MainWindow *main, QWidget *parent) : actionStart->setVisible(false); actionAttach->setVisible(false); actionContinueUntilMain->setVisible(false); - actionContinueUntilCall->setVisible(false); continueUntilButton->setDefaultAction(actionContinueUntilSyscall); this->colorToolbar(true); });