diff --git a/src/Xamarin.Android.Tools.ApiXmlAdjuster/JavaApiTypeResolverExtensions.cs b/src/Xamarin.Android.Tools.ApiXmlAdjuster/JavaApiTypeResolverExtensions.cs index 65f1ea7c7..060b2b775 100644 --- a/src/Xamarin.Android.Tools.ApiXmlAdjuster/JavaApiTypeResolverExtensions.cs +++ b/src/Xamarin.Android.Tools.ApiXmlAdjuster/JavaApiTypeResolverExtensions.cs @@ -104,23 +104,23 @@ public static void Resolve (this JavaField f) f.ResolvedType = f.GetApi ().Parse (f.TypeGeneric, f.Parent.TypeParameters); } - static void ResolveMethodBase (this JavaMethodBase m, JavaTypeParameters methodTypeParameters) + static void ResolveMethodBase (this JavaMethodBase m) { + if (m.TypeParameters != null) + m.TypeParameters.Resolve (m.GetApi (), m.TypeParameters); foreach (var p in m.Parameters) - p.ResolvedType = m.GetApi ().Parse (p.Type, m.Parent.TypeParameters, methodTypeParameters); + p.ResolvedType = m.GetApi ().Parse (p.Type, m.Parent.TypeParameters, m.TypeParameters); } public static void Resolve (this JavaMethod m) { - if (m.TypeParameters != null) - m.TypeParameters.Resolve (m.GetApi (), m.TypeParameters); - m.ResolveMethodBase (m.TypeParameters); + m.ResolveMethodBase (); m.ResolvedReturnType = m.GetApi ().Parse (m.Return, m.Parent.TypeParameters, m.TypeParameters); } public static void Resolve (this JavaConstructor c) { - c.ResolveMethodBase (null); + c.ResolveMethodBase (); } static void Resolve (this JavaTypeParameters tp, JavaApi api, params JavaTypeParameters [] additionalTypeParameters)