summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Kotas <jkotas@microsoft.com>2019-05-21 16:24:19 -0700
committerGitHub <noreply@github.com>2019-05-21 16:24:19 -0700
commit308b6b63f49d9ddaca2d11e141fb5c39591ec766 (patch)
tree2a03afb1ce2cc1c9c05f06f8f64db1a7f053a752
parent2b4b230cdf44d0c25df004660f18c4290e9deb72 (diff)
downloadcoreclr-308b6b63f49d9ddaca2d11e141fb5c39591ec766.tar.gz
coreclr-308b6b63f49d9ddaca2d11e141fb5c39591ec766.tar.bz2
coreclr-308b6b63f49d9ddaca2d11e141fb5c39591ec766.zip
Add null check in VoidFreeNativeLibrary (#24685)
-rw-r--r--src/vm/util.hpp18
1 files changed, 4 insertions, 14 deletions
diff --git a/src/vm/util.hpp b/src/vm/util.hpp
index ddf9d8218f..5113df694e 100644
--- a/src/vm/util.hpp
+++ b/src/vm/util.hpp
@@ -796,24 +796,14 @@ InternalSetupForComCall(-1, -1, -1, false)
#include "unsafe.h"
-inline void UnsafeTlsFreeForHolder(DWORD* addr)
-{
- WRAPPER_NO_CONTRACT;
-
- if (addr && *addr != TLS_OUT_OF_INDEXES) {
- UnsafeTlsFree(*addr);
- *addr = TLS_OUT_OF_INDEXES;
- }
-}
-
-// A holder to make sure tls slot is released and memory for allocated one is set to TLS_OUT_OF_INDEXES
-typedef Holder<DWORD*, DoNothing<DWORD*>, UnsafeTlsFreeForHolder> TlsHolder;
-
-// A holder for HMODULE.
+// A holder for NATIVE_LIBRARY_HANDLE.
FORCEINLINE void VoidFreeNativeLibrary(NATIVE_LIBRARY_HANDLE h)
{
WRAPPER_NO_CONTRACT;
+ if (h == NULL)
+ return;
+
#ifdef FEATURE_PAL
PAL_FreeLibraryDirect(h);
#else