Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corert.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/System.Private.TypeLoader/src/Internal/Runtime/TypeLoader/MetadataReaderExtensions.Ecma.cs')
-rw-r--r--src/System.Private.TypeLoader/src/Internal/Runtime/TypeLoader/MetadataReaderExtensions.Ecma.cs11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/System.Private.TypeLoader/src/Internal/Runtime/TypeLoader/MetadataReaderExtensions.Ecma.cs b/src/System.Private.TypeLoader/src/Internal/Runtime/TypeLoader/MetadataReaderExtensions.Ecma.cs
index ebd30963a..7b50bee42 100644
--- a/src/System.Private.TypeLoader/src/Internal/Runtime/TypeLoader/MetadataReaderExtensions.Ecma.cs
+++ b/src/System.Private.TypeLoader/src/Internal/Runtime/TypeLoader/MetadataReaderExtensions.Ecma.cs
@@ -9,6 +9,7 @@ using System.Diagnostics;
using System.Collections;
using System.Collections.Generic;
using System.Collections.Immutable;
+using System.Globalization;
using Internal.LowLevelLinq;
using Internal.Reflection.Core;
@@ -91,10 +92,18 @@ namespace System.Reflection.Runtime.General
publicKeyOrTokenByteArray = Array.Empty<byte>();
}
+ string cultureName = culture.GetString(reader);
+ if (!String.IsNullOrEmpty(cultureName))
+ {
+ // Canonicalize spelling and force a CultureNotFoundException if not a valid culture
+ CultureInfo cultureInfo = CultureInfo.GetCultureInfo(cultureName);
+ cultureName = cultureInfo.Name;
+ }
+
return new RuntimeAssemblyName(
name.GetString(reader),
version,
- culture.GetString(reader),
+ cultureName,
assemblyNameFlags,
publicKeyOrTokenByteArray
);