summaryrefslogtreecommitdiff
path: root/source/slang-rt/slang-rt.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2022-08-10 01:58:41 -0700
committerGitHub <noreply@github.com>2022-08-10 01:58:41 -0700
commit89083c4b50af8e48e70b25b63cc62aca21ab706c (patch)
tree38e9544cd218dbeea0a2f26f267ac16f275c0291 /source/slang-rt/slang-rt.cpp
parent9df7fcb023bd5a22f35ecd609b7a50cc6634976c (diff)
Language server pointer type support + add `DLLImport` test (#2350)
* Language server pointer type support. + Natvis for AST. * Add completion suggestion for GUID. * Make executable test able to use slang-rt. * Fix gcc argument for rpath. * Fix DLLImport on linux. * Fix windows. * Fix. Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'source/slang-rt/slang-rt.cpp')
-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)