diff --git a/src/Mono.Android/Android.Runtime/JNINativeWrapper.cs b/src/Mono.Android/Android.Runtime/JNINativeWrapper.cs index d7b27e855d8..fd37a69647c 100644 --- a/src/Mono.Android/Android.Runtime/JNINativeWrapper.cs +++ b/src/Mono.Android/Android.Runtime/JNINativeWrapper.cs @@ -34,8 +34,6 @@ public static Delegate CreateDelegate (Delegate dlg) if (dlg.Method == null) throw new ArgumentException (); - get_runtime_types (); - var delegateType = dlg.GetType (); var result = CreateBuiltInDelegate (dlg, delegateType); if (result != null) @@ -45,6 +43,8 @@ public static Delegate CreateDelegate (Delegate dlg) RuntimeNativeMethods.monodroid_log (LogLevel.Debug, LogCategories.Assembly, $"Falling back to System.Reflection.Emit for delegate type '{delegateType}': {dlg.Method}"); } + get_runtime_types (); + var ret_type = dlg.Method.ReturnType; var parameters = dlg.Method.GetParameters (); var param_types = new Type [parameters.Length];