diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/GenerateTypeMappings.cs b/src/Xamarin.Android.Build.Tasks/Tasks/GenerateTypeMappings.cs index 70a6a60f5a9..eb9e89bfe87 100644 --- a/src/Xamarin.Android.Build.Tasks/Tasks/GenerateTypeMappings.cs +++ b/src/Xamarin.Android.Build.Tasks/Tasks/GenerateTypeMappings.cs @@ -50,6 +50,7 @@ public class GenerateTypeMappings : AndroidTask public string TypemapOutputDirectory { get; set; } = ""; AndroidRuntime androidRuntime; + readonly List generatedBinaryTypeMaps = new List (); public override bool RunTask () { @@ -71,6 +72,7 @@ public override bool RunTask () if (RunCheckedBuild || useMarshalMethods) GenerateAllTypeMappingsFromNativeState (useMarshalMethods); + GeneratedBinaryTypeMaps = generatedBinaryTypeMaps.ToArray (); return !Log.HasLoggedErrors; } @@ -153,7 +155,6 @@ void GenerateTypeMapFromNativeState (NativeCodeGenState state, bool useMarshalMe void AddOutputTypeMaps (TypeMapGenerator tmg, AndroidTargetArch arch) { string abi = MonoAndroidHelper.ArchToAbi (arch); - var items = new List (); foreach (string file in tmg.GeneratedBinaryTypeMaps) { var item = new TaskItem (file); @@ -161,9 +162,7 @@ void AddOutputTypeMaps (TypeMapGenerator tmg, AndroidTargetArch arch) item.SetMetadata ("DestinationSubPath", $"{abi}/{fileName}"); item.SetMetadata ("DestinationSubDirectory", $"{abi}/"); item.SetMetadata ("Abi", abi); - items.Add (item); + generatedBinaryTypeMaps.Add (item); } - - GeneratedBinaryTypeMaps = GeneratedBinaryTypeMaps.Concat (items).ToArray (); } }