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")
|
set(CORECLR_SUBARCH "arm64")
|
||||||
endif()
|
endif()
|
||||||
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)
|
if (NOT DOTNET_EXECUTABLE)
|
||||||
set(DOTNET_EXECUTABLE dotnet)
|
set(DOTNET_EXECUTABLE dotnet)
|
||||||
|
@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
#include <functional>
|
#include <functional>
|
||||||
#include <map>
|
#include <map>
|
||||||
|
#include <mutex>
|
||||||
#include <span>
|
#include <span>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
|
@ -63,6 +63,13 @@ namespace hex::script::loader {
|
|||||||
if (netHostLibrary != nullptr)
|
if (netHostLibrary != nullptr)
|
||||||
break;
|
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
|
#endif
|
||||||
|
|
||||||
if (netHostLibrary == nullptr) {
|
if (netHostLibrary == nullptr) {
|
||||||
@ -75,7 +82,7 @@ namespace hex::script::loader {
|
|||||||
std::array<char_t, 300> buffer = { };
|
std::array<char_t, 300> buffer = { };
|
||||||
size_t bufferSize = buffer.size();
|
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) {
|
if (result != 0) {
|
||||||
log::error(hex::format("Could not get hostfxr path! 0x{:X}", result));
|
log::error(hex::format("Could not get hostfxr path! 0x{:X}", result));
|
||||||
return false;
|
return false;
|
||||||
|
Loading…
Reference in New Issue
Block a user