From 7fc3f7001a3fcc3dbab90834c6bc2b389b3b38c9 Mon Sep 17 00:00:00 2001 From: KWSys Upstream Date: Mon, 26 Jul 2021 10:16:56 -0400 Subject: KWSys 2021-07-26 (d5fd6ca2) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Code extracted from: https://gitlab.kitware.com/utils/kwsys.git at commit d5fd6ca2ba5b4ca04d7ac346ceb87f7d2b0ad8aa (master). Upstream Shortlog ----------------- Dženan Zukić (1): 7079df74 SystemTools: Fix GetOperatingSystemNameAndVersion empty string return Đoàn Trần Công Danh (1): 4e69b791 SystemInformation: Add option to explicitly avoid using execinfo --- CMakeLists.txt | 4 +++- SystemTools.cxx | 6 +++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ef615b3..7da5971 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -46,6 +46,8 @@ # Set to empty string to use no default value. # KWSYS_CXX_COMPILE_FEATURES = target_compile_features arguments for KWSys. # +# KWSYS_NO_EXECINFO = Do not use execinfo. +# # Optional settings to setup install rules are as follows: # # KWSYS_INSTALL_BIN_DIR = The installation target directories into @@ -526,7 +528,7 @@ if(KWSYS_USE_SystemInformation) set_property(SOURCE SystemInformation.cxx APPEND PROPERTY COMPILE_DEFINITIONS KWSYS_CXX_HAS_RLIMIT64=1) endif() - if(UNIX) + if(UNIX AND NOT KWSYS_NO_EXECINFO) include(CheckIncludeFileCXX) # check for simple stack trace # usually it's in libc but on FreeBSD diff --git a/SystemTools.cxx b/SystemTools.cxx index 006495d..7c26974 100644 --- a/SystemTools.cxx +++ b/SystemTools.cxx @@ -4360,7 +4360,7 @@ std::string SystemTools::GetOperatingSystemNameAndVersion() # endif bOsVersionInfoEx = GetVersionExA((OSVERSIONINFOA*)&osvi); if (!bOsVersionInfoEx) { - return 0; + return ""; } # ifdef KWSYS_WINDOWS_DEPRECATED_GetVersionEx # ifdef __clang__ @@ -4499,14 +4499,14 @@ std::string SystemTools::GetOperatingSystemNameAndVersion() L"SYSTEM\\CurrentControlSet\\Control\\ProductOptions", 0, KEY_QUERY_VALUE, &hKey); if (lRet != ERROR_SUCCESS) { - return 0; + return ""; } lRet = RegQueryValueExW(hKey, L"ProductType", nullptr, nullptr, (LPBYTE)szProductType, &dwBufLen); if ((lRet != ERROR_SUCCESS) || (dwBufLen > BUFSIZE)) { - return 0; + return ""; } RegCloseKey(hKey); -- cgit v0.12