From 38d11dacb735ecdaaa4efc9e5f6dd34eb7efcd06 Mon Sep 17 00:00:00 2001 From: WerWolv Date: Thu, 27 Feb 2025 08:45:24 +0100 Subject: [PATCH] fix: Crash when choosing Edit -> Disassemble Selection without ever opening disassembler view Fixes #2149 --- .../disassembler/source/content/views/view_disassembler.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/plugins/disassembler/source/content/views/view_disassembler.cpp b/plugins/disassembler/source/content/views/view_disassembler.cpp index 5ae690997..792c173d9 100644 --- a/plugins/disassembler/source/content/views/view_disassembler.cpp +++ b/plugins/disassembler/source/content/views/view_disassembler.cpp @@ -29,7 +29,7 @@ namespace hex::plugin::disasm { this->disassemble(); }, [this]{ - return ImHexApi::HexEditor::isSelectionValid() && !this->m_disassemblerTask.isRunning(); + return ImHexApi::HexEditor::isSelectionValid() && !m_disassemblerTask.isRunning() && *m_currArchitecture != nullptr; }); } @@ -50,6 +50,9 @@ namespace hex::plugin::disasm { const auto region = m_regionToDisassemble.get(provider); auto &disassembly = m_disassembly.get(provider); + if (currArchitecture == nullptr) + return; + // Create a capstone disassembler instance if (currArchitecture->start()) { ON_SCOPE_EXIT {