diff options
Diffstat (limited to 'src/gc/sample/gcenv.ee.cpp')
-rw-r--r-- | src/gc/sample/gcenv.ee.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/gc/sample/gcenv.ee.cpp b/src/gc/sample/gcenv.ee.cpp index 20be78cc93..9a4e9c9a74 100644 --- a/src/gc/sample/gcenv.ee.cpp +++ b/src/gc/sample/gcenv.ee.cpp @@ -319,9 +319,16 @@ bool GCToEEInterface::WasCurrentThreadCreatedByGC() return false; } +static MethodTable freeObjectMT; + MethodTable* GCToEEInterface::GetFreeObjectMethodTable() { - return g_pFreeObjectMethodTable; + // + // Initialize free object methodtable. The GC uses a special array-like methodtable as placeholder + // for collected free space. + // + freeObjectMT.InitializeFreeObject(); + return &freeObjectMT; } bool GCToEEInterface::CreateThread(void (*threadStart)(void*), void* arg, bool is_suspendable, const char* name) @@ -349,7 +356,7 @@ void *GCToEEInterface::GetAppDomainAtIndex(uint32_t appDomainIndex) bool GCToEEInterface::AppDomainCanAccessHandleTable(uint32_t appDomainID) { - return false; + return true; } uint32_t GCToEEInterface::GetIndexOfAppDomainBeingUnloaded() |