diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 7ad55cdf3..da59c74b0 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -11,8 +11,11 @@ env: BUILD_TYPE: Debug jobs: - build_ubuntu_20: - runs-on: ubuntu-20.04 + build_ubuntu_24: + runs-on: ubuntu-24.04 + strategy: + matrix: + QT_VERSION: [5.12.8, 5.15.2] steps: - name: Install Dependencies run: sudo apt-get install -y libcapstone-dev libgraphviz-dev @@ -22,9 +25,9 @@ jobs: submodules: true - name: Install Qt - uses: jurplel/install-qt-action@v3 + uses: jurplel/install-qt-action@v4 with: - version: "5.12.8" + version: ${{matrix.QT_VERSION}} - name: Configure CMake # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. @@ -34,7 +37,6 @@ jobs: - name: Build # Build your program with the given configuration run: cmake --build ${{github.workspace}}/build --parallel 4 --config ${{env.BUILD_TYPE}} - # Disabled until both aqinstall and install-qt-action support the fixes… # build_windows: # runs-on: windows-latest diff --git a/src/Configuration.cpp b/src/Configuration.cpp index b3302036d..711344af8 100644 --- a/src/Configuration.cpp +++ b/src/Configuration.cpp @@ -5,6 +5,7 @@ */ #include "Configuration.h" +#include "IBreakpoint.h" #include "edb.h" #include @@ -20,17 +21,6 @@ namespace { -QDataStream &operator<<(QDataStream &s, const IBreakpoint::TypeId &id) { - return s << static_cast(id); -} - -QDataStream &operator>>(QDataStream &s, IBreakpoint::TypeId &id) { - int value = 0; - s >> value; - id = static_cast(value); - return s; -} - //------------------------------------------------------------------------------ // Name: getDefaultPluginPath // Desc: return default path for plugins @@ -81,12 +71,10 @@ void Configuration::sendChangeNotification() { //------------------------------------------------------------------------------ void Configuration::readSettings() { - qRegisterMetaTypeStreamOperators("IBreakpoint::TypeId"); - #ifdef Q_OS_WIN32 const QString default_font = QFont("Courier New", 8).toString(); #elif defined(Q_OS_MACX) - const QString default_font = QFont("Courier New", 10).toString(); + const QString default_font = QFont("Courier New", 10).toString(); #else const QString default_font = QFont("Monospace", 8).toString(); #endif @@ -126,7 +114,8 @@ void Configuration::readSettings() { disableASLR = settings.value("debugger.disableASLR.enabled", false).toBool(); disableLazyBinding = settings.value("debugger.disableLazyBinding.enabled", false).toBool(); break_on_library_load = settings.value("debugger.break_on_library_load_event.enabled", false).toBool(); - default_breakpoint_type = settings.value("debugger.default_breakpoint_type", QVariant::fromValue(IBreakpoint::TypeId::Automatic)).value(); + default_breakpoint_type = static_cast(settings.value("debugger.default_breakpoint_type", static_cast(IBreakpoint::TypeId::Automatic)).value()); + settings.endGroup(); settings.beginGroup("Disassembly"); @@ -242,7 +231,7 @@ void Configuration::writeSettings() { settings.setValue("debugger.disableASLR.enabled", disableASLR); settings.setValue("debugger.disableLazyBinding.enabled", disableLazyBinding); settings.setValue("debugger.break_on_library_load_event.enabled", break_on_library_load); - settings.setValue("debugger.default_breakpoint_type", QVariant::fromValue(default_breakpoint_type)); + settings.setValue("debugger.default_breakpoint_type", static_cast(default_breakpoint_type)); settings.endGroup(); settings.beginGroup("Disassembly");