diff --git a/src/common/utils/string.hpp b/src/common/utils/string.hpp index c2ea97ea..2ab1a772 100644 --- a/src/common/utils/string.hpp +++ b/src/common/utils/string.hpp @@ -19,26 +19,18 @@ namespace utils::string template requires(std::is_trivially_copyable_v) // NOLINTNEXTLINE(cppcoreguidelines-avoid-c-arrays,hicpp-avoid-c-arrays,modernize-avoid-c-arrays) - void copy(T (&array)[Size], const std::basic_string_view str) + void copy(T (&array)[Size], const T* str) { if constexpr (Size == 0) { return; } - const auto size = std::min(Size, str.size()); - memcpy(array, str.data(), size * sizeof(T)); + const auto size = std::min(Size, std::char_traits::length(str)); + memcpy(array, str, size * sizeof(T)); array[std::min(Size - 1, size)] = {}; } - template - requires(std::is_trivially_copyable_v) - // NOLINTNEXTLINE(cppcoreguidelines-avoid-c-arrays,hicpp-avoid-c-arrays,modernize-avoid-c-arrays) - void copy(T (&array)[Size], const T* str) - { - copy(array, std::basic_string_view(str)); - } - inline char char_to_lower(const char val) { return static_cast(std::tolower(static_cast(val))); diff --git a/src/windows-emulator/syscalls.cpp b/src/windows-emulator/syscalls.cpp index 0cb3813f..683ae614 100644 --- a/src/windows-emulator/syscalls.cpp +++ b/src/windows-emulator/syscalls.cpp @@ -926,7 +926,7 @@ namespace syscalls } display_device.access([&](EMU_DISPLAY_DEVICEW& dev) { - dev.StateFlags = 0; + dev.StateFlags = 0x80005; // DISPLAY_DEVICE_UNSAFE_MODES_ON | DISPLAY_DEVICE_PRIMARY_DEVICE | DISPLAY_DEVICE_ATTACHED_TO_DESKTOP utils::string::copy(dev.DeviceName, u"\\\\.\\DISPLAY1"); utils::string::copy(dev.DeviceID, u"PCI\\VEN_10DE&DEV_0000&SUBSYS_00000000&REV_A1"); utils::string::copy(dev.DeviceString, u"Emulator Display");