summaryrefslogtreecommitdiff
path: root/source/slang-rt
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang-rt')
-rw-r--r--source/slang-rt/slang-rt.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/source/slang-rt/slang-rt.cpp b/source/slang-rt/slang-rt.cpp
index 163a1b99c..94699dfa0 100644
--- a/source/slang-rt/slang-rt.cpp
+++ b/source/slang-rt/slang-rt.cpp
@@ -25,7 +25,7 @@ extern "C"
ComPtr<ISlangSharedLibrary> lib;
if (!slangRT_loadedLibraries.TryGetValue(modulePath, lib))
{
- if (DefaultSharedLibraryLoader::getSingleton()->loadSharedLibrary(
+ if (DefaultSharedLibraryLoader::getSingleton()->loadPlatformSharedLibrary(
modulePath.getBuffer(), lib.writeRef()) != SLANG_OK)
{
_slang_rt_abort("Failed to load DLL \"" + modulePath + "\"");
@@ -38,6 +38,10 @@ extern "C"
SLANG_RT_API void* SLANG_MCALL
_slang_rt_load_dll_func(void* moduleHandle, Slang::String funcName)
{
+ if (moduleHandle == nullptr)
+ {
+ moduleHandle = _slang_rt_load_dll("");
+ }
auto lib = static_cast<ISlangSharedLibrary*>(moduleHandle);
auto funcPtr = lib->findFuncByName(funcName.getBuffer());
if (!funcPtr)