X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmini%2Fmini-runtime.c;h=a9d42e691d684612ba388364b7790b6a96967e5b;hb=f2dc087948dbcd319f276b6800c5496073d9d0a0;hp=55275e0cade3f739c4a800bc1bda10f6e571f48a;hpb=006de2be02dde32787cc3eba22b384c086d0bc13;p=mono.git diff --git a/mono/mini/mini-runtime.c b/mono/mini/mini-runtime.c index 55275e0cade..a9d42e691d6 100644 --- a/mono/mini/mini-runtime.c +++ b/mono/mini/mini-runtime.c @@ -496,6 +496,13 @@ mono_tramp_info_register_internal (MonoTrampInfo *info, MonoDomain *domain, gboo if (info->unwind_ops) { copy->uw_info = mono_unwind_ops_encode (info->unwind_ops, ©->uw_info_len); copy->owns_uw_info = TRUE; + if (domain) { + /* Move unwind info into the domain's memory pool so that it is removed once the domain is released. */ + guint8 *temp = copy->uw_info; + copy->uw_info = mono_domain_alloc (domain, copy->uw_info_len); + memcpy (copy->uw_info, temp, copy->uw_info_len); + g_free (temp); + } } else { /* Trampolines from aot have the unwind ops already encoded */ copy->uw_info = info->uw_info;