From 2f872732b5e45295306f63d465328a204b5cd834 Mon Sep 17 00:00:00 2001 From: Yuhang Zhao <2546789017@qq.com> Date: Wed, 3 Aug 2022 17:53:17 +0800 Subject: [PATCH] tool: minor tweaks Signed-off-by: Yuhang Zhao <2546789017@qq.com> --- tools/dpitester/CMakeLists.txt | 13 +++++++------ tools/dpitester/main.cpp | 13 +++++++------ 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/tools/dpitester/CMakeLists.txt b/tools/dpitester/CMakeLists.txt index 52a5572..fafff7f 100644 --- a/tools/dpitester/CMakeLists.txt +++ b/tools/dpitester/CMakeLists.txt @@ -16,10 +16,11 @@ set(CMAKE_CXX_EXTENSIONS OFF) set(CMAKE_MSVC_RUNTIME_LIBRARY MultiThreaded$<$:Debug>) -string(REGEX REPLACE "[-|/]GR" "/GR-" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) -#string(REGEX REPLACE "[-|/]EHsc" "/EHs-c-" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) -string(REGEX REPLACE "[-|/]W[0|1|2|3|4]" "/W4" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) -string(REGEX REPLACE "[-|/]Ob[0|1|2|3]" "/Ob3" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE}) +string(REGEX REPLACE "[-|/]GR" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) +#string(REGEX REPLACE "[-|/]EHsc" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) +string(REGEX REPLACE "[-|/]W[0|1|2|3|4]" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) +string(REGEX REPLACE "[-|/]Ob[0|1|2|3]" "" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE}) +string(APPEND CMAKE_RC_FLAGS " /c65001 /nologo ") add_executable(${PROJECT_NAME}) @@ -38,10 +39,10 @@ target_compile_definitions(${PROJECT_NAME} PRIVATE ) target_compile_options(${PROJECT_NAME} PRIVATE - /await:strict /bigobj /d2FH4 /MP /FS /utf-8 /WX /permissive- /ZH:SHA_256 + /await:strict /bigobj /d2FH4 /FS /GR- /MP /permissive- /utf-8 /W4 /WX /ZH:SHA_256 /Zc:char8_t,__cplusplus,externC,externConstexpr,hiddenFriend,lambda,preprocessor,referenceBinding,rvalueCast,strictStrings,ternary,throwingNew,trigraphs $<$:/JMC> - $<$>:/guard:cf /guard:ehcont /GA /GT /Gw /Gy /Oi /Oy /QIntel-jcc-erratum /Qspectre-load /Zc:inline> + $<$>:/guard:cf /guard:ehcont /GA /GT /Gw /Gy /Ob3 /Oi /Oy /QIntel-jcc-erratum /Qspectre-load /Zc:inline> ) target_link_options(${PROJECT_NAME} PRIVATE diff --git a/tools/dpitester/main.cpp b/tools/dpitester/main.cpp index 3639002..f5cb874 100644 --- a/tools/dpitester/main.cpp +++ b/tools/dpitester/main.cpp @@ -225,8 +225,7 @@ void HiDPI::Initialize() wcex.lpfnWndProc = DefWindowProcW; wcex.hInstance = instance; wcex.lpszClassName = WINDOW_CLASS_NAME; - const ATOM atom = RegisterClassExW(&wcex); - if (atom) { + if (RegisterClassExW(&wcex) != INVALID_ATOM) { FakeWindow = CreateWindowExW(0, WINDOW_CLASS_NAME, nullptr, WS_OVERLAPPEDWINDOW, 0, 0, 0, 0, nullptr, nullptr, instance, nullptr); if (!FakeWindow) { @@ -351,8 +350,12 @@ EXTERN_C int WINAPI wmain(int argc, wchar_t *argv[]) std::unordered_map options = {}; std::vector metrics = {}; if (argc > 1) { - bool skipNext = false; + bool skip = false; for (int i = 1; i != argc; ++i) { + if (skip) { + skip = false; + continue; + } const std::wstring arg = argv[i]; if (arg.starts_with(L"SM_CX") || arg.starts_with(L"SM_CY")) { if (SYSTEM_METRIC_TABLE.contains(arg)) { @@ -372,7 +375,7 @@ EXTERN_C int WINAPI wmain(int argc, wchar_t *argv[]) if (pos == std::wstring::npos) { const int index = i + 1; if (index < argc) { - skipNext = true; + skip = true; param = argv[index]; } } else { @@ -384,8 +387,6 @@ EXTERN_C int WINAPI wmain(int argc, wchar_t *argv[]) } else { options.insert({option, param}); } - } else if (skipNext) { - skipNext = false; } else { std::wcerr << L"Unrecognized parameter: " << arg << std::endl; }