diff --git a/src/backends/unicorn-emulator/unicorn_x64_emulator.cpp b/src/backends/unicorn-emulator/unicorn_x64_emulator.cpp index cd8a94cb..b4b3ce47 100644 --- a/src/backends/unicorn-emulator/unicorn_x64_emulator.cpp +++ b/src/backends/unicorn-emulator/unicorn_x64_emulator.cpp @@ -207,8 +207,10 @@ namespace unicorn #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wconversion" #endif - - uce(uc_ctl_set_tcg_buffer_size(this->uc_, 2 << 30 /* 2 gb */)); + if constexpr (sizeof(void*) >= 8) + { + uce(uc_ctl_set_tcg_buffer_size(this->uc_, 2 << 30 /* 2 gb */)); + } #ifndef OS_WINDOWS #pragma GCC diagnostic pop @@ -264,8 +266,8 @@ namespace unicorn struct msr_value { - uint32_t id; - uint64_t value; + uint64_t id{}; + uint64_t value{}; }; msr_value msr_val{ diff --git a/src/windows-emulator/module/module_manager.cpp b/src/windows-emulator/module/module_manager.cpp index 3c1b10d4..6e20e135 100644 --- a/src/windows-emulator/module/module_manager.cpp +++ b/src/windows-emulator/module/module_manager.cpp @@ -107,7 +107,7 @@ mapped_module* module_manager::map_module(const windows_path& file, const logger mapped_module* module_manager::map_local_module(const std::filesystem::path& file, const logger& logger, const bool is_static) { - auto local_file = canonical(absolute(file)); + auto local_file = weakly_canonical(absolute(file)); for (auto& mod : this->modules_ | std::views::values) {