mirror of
https://github.com/Relintai/godot-mono-builds.git
synced 2024-11-14 10:27:25 +01:00
20 lines
652 B
Diff
20 lines
652 B
Diff
|
diff --git a/mono/mini/debugger-agent.c b/mono/mini/debugger-agent.c
|
||
|
index df6329391df..05f30d5b4dc 100644
|
||
|
--- a/mono/mini/debugger-agent.c
|
||
|
+++ b/mono/mini/debugger-agent.c
|
||
|
@@ -4088,8 +4088,12 @@ thread_startup (MonoProfiler *prof, uintptr_t tid)
|
||
|
}
|
||
|
|
||
|
tls = (DebuggerTlsData *)mono_native_tls_get_value (debugger_tls_id);
|
||
|
- g_assert (!tls);
|
||
|
- // FIXME: Free this somewhere
|
||
|
+ if (tls) {
|
||
|
+ if (!tls->terminated) {
|
||
|
+ MONO_GC_UNREGISTER_ROOT(tls->thread);
|
||
|
+ }
|
||
|
+ g_free (tls);
|
||
|
+ }
|
||
|
tls = g_new0 (DebuggerTlsData, 1);
|
||
|
MONO_GC_REGISTER_ROOT_SINGLE (tls->thread, MONO_ROOT_SOURCE_DEBUGGER, NULL, "Debugger Thread Reference");
|
||
|
tls->thread = thread;
|