From b45143416802d23bbd8963bf2e15117385d95b76 Mon Sep 17 00:00:00 2001 From: Aleksey Kliger Date: Wed, 27 Sep 2017 18:30:13 -0400 Subject: [PATCH] [sre] Expect a new token for MonoArrayMethod and SignatureHelper --- mono/metadata/sre.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/mono/metadata/sre.c b/mono/metadata/sre.c index b899c830e78..29632463e1c 100644 --- a/mono/metadata/sre.c +++ b/mono/metadata/sre.c @@ -1197,16 +1197,20 @@ mono_image_create_token (MonoDynamicImage *assembly, MonoObjectHandle obj, /*g_print ("got token 0x%08x for %s\n", token, f->field->name);*/ } else if (strcmp (klass->name, "MonoArrayMethod") == 0) { MonoReflectionArrayMethodHandle m = MONO_HANDLE_CAST (MonoReflectionArrayMethod, obj); + /* always returns a fresh token */ guint32 array_token = mono_image_get_array_token (assembly, m, error); if (!is_ok (error)) goto leave; token = array_token; + how_collide = MONO_DYN_IMAGE_TOK_NEW; } else if (strcmp (klass->name, "SignatureHelper") == 0) { MonoReflectionSigHelperHandle s = MONO_HANDLE_CAST (MonoReflectionSigHelper, obj); + /* always returns a fresh token */ guint32 sig_token = MONO_TOKEN_SIGNATURE | mono_image_get_sighelper_token (assembly, s, error); if (!is_ok (error)) goto leave; token = sig_token; + how_collide = MONO_DYN_IMAGE_TOK_NEW; } else { g_error ("requested token for %s\n", klass->name); } -- 2.25.1