From 7674243a99716cf605eae1d0dc6901268445258c Mon Sep 17 00:00:00 2001 From: CLARATION Date: Wed, 22 Jul 2026 02:24:36 -0700 Subject: [PATCH] fix(wx): add windows c++11 patch `std::size` too new --- CMakeLists.txt | 2 ++ patches/wxWidgets/0001-cpp11-support.patch | 13 +++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 patches/wxWidgets/0001-cpp11-support.patch diff --git a/CMakeLists.txt b/CMakeLists.txt index a9abfbc..616697d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -78,6 +78,8 @@ if(WITH_GUI) wxWidgets GIT_REPOSITORY https://github.com/wxWidgets/wxWidgets.git GIT_SHALLOW ON + PATCH_COMMAND + patch --forward --ignore-whitespace -p1 < "${CMAKE_SOURCE_DIR}/patches/wxWidgets/0001-cpp11-support.patch" || true ) FetchContent_MakeAvailable(wxWidgets) set(WX_LIBRARIES wxcore wxbase wxnet) diff --git a/patches/wxWidgets/0001-cpp11-support.patch b/patches/wxWidgets/0001-cpp11-support.patch new file mode 100644 index 0000000..37fc857 --- /dev/null +++ b/patches/wxWidgets/0001-cpp11-support.patch @@ -0,0 +1,13 @@ +diff --git a/src/msw/taskdlg.cpp b/src/msw/taskdlg.cpp +index 7844220405..d3c181029d 100644 +--- a/src/msw/taskdlg.cpp ++++ b/src/msw/taskdlg.cpp +@@ -966,7 +966,7 @@ TDRadioButtonSubclassProc(HWND hwnd, + ::DefSubclassProc(hwnd, WM_PRINTCLIENT, reinterpret_cast(hdcBuf), PRF_CLIENT); + + wchar_t text[512] = {}; +- GetWindowTextW(hwnd, text, static_cast(std::size(text))); ++ GetWindowTextW(hwnd, text, static_cast(sizeof(text) / sizeof(text[0]))); + + auto gs = hBtn.GetTrueSize(BP_RADIOBUTTON, RBS_UNCHECKEDNORMAL); + RECT rcText = { gs.x + 2, 0, rcClient.right, rcClient.bottom };