fix: .NET script loader not initializing correctly on macOS
This commit is contained in:
parent
9e2f228d9a
commit
1e91505e6e
@ -11,6 +11,14 @@ if (UNIX)
|
||||
set(CORECLR_SUBARCH "arm64")
|
||||
endif()
|
||||
endif()
|
||||
if (APPLE)
|
||||
if (CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
|
||||
set(CORECLR_ARCH "osx-arm64")
|
||||
set(CORECLR_SUBARCH "arm64")
|
||||
else()
|
||||
set(CORECLR_ARCH "osx-x64")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (NOT DOTNET_EXECUTABLE)
|
||||
set(DOTNET_EXECUTABLE dotnet)
|
||||
|
@ -6,6 +6,7 @@
|
||||
|
||||
#include <functional>
|
||||
#include <map>
|
||||
#include <mutex>
|
||||
#include <span>
|
||||
#include <string>
|
||||
#include <utility>
|
||||
|
@ -63,6 +63,13 @@ namespace hex::script::loader {
|
||||
if (netHostLibrary != nullptr)
|
||||
break;
|
||||
}
|
||||
if (netHostLibrary == nullptr) {
|
||||
for (const auto &librariesPath : fs::getDefaultPaths(fs::ImHexPath::Libraries)) {
|
||||
netHostLibrary = loadLibrary((librariesPath / "libnethost.dylib").c_str());
|
||||
if (netHostLibrary != nullptr)
|
||||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
if (netHostLibrary == nullptr) {
|
||||
@ -75,7 +82,7 @@ namespace hex::script::loader {
|
||||
std::array<char_t, 300> buffer = { };
|
||||
size_t bufferSize = buffer.size();
|
||||
|
||||
auto result = get_hostfxr_path_ptr(buffer.data(), &bufferSize, nullptr);
|
||||
u32 result = get_hostfxr_path_ptr(buffer.data(), &bufferSize, nullptr);
|
||||
if (result != 0) {
|
||||
log::error(hex::format("Could not get hostfxr path! 0x{:X}", result));
|
||||
return false;
|
||||
|
Loading…
Reference in New Issue
Block a user