Skip to content

Commit 01948ae

Browse files
authored
Remove the ProcessorArchitecture portion from the full name as it's obsolete (PowerShell#18320)
1 parent cc86f9f commit 01948ae

File tree

2 files changed

+19
-28
lines changed

2 files changed

+19
-28
lines changed

src/System.Management.Automation/singleshell/config/MshSnapinInfo.cs

Lines changed: 18 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -865,7 +865,7 @@ internal static Version ReadVersionValue(RegistryKey mshsnapinKey, string name,
865865
return v;
866866
}
867867

868-
internal static void ReadRegistryInfo(out Version assemblyVersion, out string publicKeyToken, out string culture, out string architecture, out string applicationBase, out Version psVersion)
868+
internal static void ReadRegistryInfo(out Version assemblyVersion, out string publicKeyToken, out string culture, out string applicationBase, out Version psVersion)
869869
{
870870
applicationBase = Utils.DefaultPowerShellAppBase;
871871
Dbg.Assert(
@@ -885,8 +885,7 @@ internal static void ReadRegistryInfo(out Version assemblyVersion, out string pu
885885
// culture, publickeytoken...This will break the scenarios where only one of
886886
// the assemblies is patched. ie., all monad assemblies should have the
887887
// same version number.
888-
Assembly currentAssembly = typeof(PSSnapInReader).Assembly;
889-
AssemblyName assemblyName = currentAssembly.GetName();
888+
AssemblyName assemblyName = typeof(PSSnapInReader).Assembly.GetName();
890889
assemblyVersion = assemblyName.Version;
891890
byte[] publicTokens = assemblyName.GetPublicKeyToken();
892891
if (publicTokens.Length == 0)
@@ -899,11 +898,6 @@ internal static void ReadRegistryInfo(out Version assemblyVersion, out string pu
899898
// save some cpu cycles by hardcoding the culture to neutral
900899
// assembly should never be targeted to a particular culture
901900
culture = "neutral";
902-
903-
// Hardcoding the architecture MSIL as PowerShell assemblies are architecture neutral, this should
904-
// be changed if the assumption is broken. Preferred hardcoded string to using (for perf reasons):
905-
// string architecture = currentAssembly.GetName().ProcessorArchitecture.ToString()
906-
architecture = "MSIL";
907901
}
908902

909903
/// <summary>
@@ -931,13 +925,12 @@ internal static string ConvertByteArrayToString(byte[] tokens)
931925
/// </returns>
932926
internal static PSSnapInInfo ReadCoreEngineSnapIn()
933927
{
934-
Version assemblyVersion, psVersion;
935-
string publicKeyToken = null;
936-
string culture = null;
937-
string architecture = null;
938-
string applicationBase = null;
939-
940-
ReadRegistryInfo(out assemblyVersion, out publicKeyToken, out culture, out architecture, out applicationBase, out psVersion);
928+
ReadRegistryInfo(
929+
out Version assemblyVersion,
930+
out string publicKeyToken,
931+
out string culture,
932+
out string applicationBase,
933+
out Version psVersion);
941934

942935
// System.Management.Automation formats & types files
943936
Collection<string> types = new Collection<string>(new string[] { "types.ps1xml", "typesv3.ps1xml" });
@@ -946,8 +939,8 @@ internal static PSSnapInInfo ReadCoreEngineSnapIn()
946939
"Help.format.ps1xml", "HelpV3.format.ps1xml", "PowerShellCore.format.ps1xml", "PowerShellTrace.format.ps1xml",
947940
"Registry.format.ps1xml"});
948941

949-
string strongName = string.Format(CultureInfo.InvariantCulture, "{0}, Version={1}, Culture={2}, PublicKeyToken={3}, ProcessorArchitecture={4}",
950-
s_coreSnapin.AssemblyName, assemblyVersion, culture, publicKeyToken, architecture);
942+
string strongName = string.Format(CultureInfo.InvariantCulture, "{0}, Version={1}, Culture={2}, PublicKeyToken={3}",
943+
s_coreSnapin.AssemblyName, assemblyVersion, culture, publicKeyToken);
951944

952945
string moduleName = Path.Combine(applicationBase, s_coreSnapin.AssemblyName + ".dll");
953946

@@ -985,13 +978,12 @@ internal static PSSnapInInfo ReadCoreEngineSnapIn()
985978
/// </returns>
986979
internal static Collection<PSSnapInInfo> ReadEnginePSSnapIns()
987980
{
988-
Version assemblyVersion, psVersion;
989-
string publicKeyToken = null;
990-
string culture = null;
991-
string architecture = null;
992-
string applicationBase = null;
993-
994-
ReadRegistryInfo(out assemblyVersion, out publicKeyToken, out culture, out architecture, out applicationBase, out psVersion);
981+
ReadRegistryInfo(
982+
out Version assemblyVersion,
983+
out string publicKeyToken,
984+
out string culture,
985+
out string applicationBase,
986+
out Version psVersion);
995987

996988
// System.Management.Automation formats & types files
997989
Collection<string> smaFormats = new Collection<string>(new string[]
@@ -1010,12 +1002,11 @@ internal static Collection<PSSnapInInfo> ReadEnginePSSnapIns()
10101002

10111003
string strongName = string.Format(
10121004
CultureInfo.InvariantCulture,
1013-
"{0}, Version={1}, Culture={2}, PublicKeyToken={3}, ProcessorArchitecture={4}",
1005+
"{0}, Version={1}, Culture={2}, PublicKeyToken={3}",
10141006
defaultMshSnapinInfo.AssemblyName,
10151007
assemblyVersionString,
10161008
culture,
1017-
publicKeyToken,
1018-
architecture);
1009+
publicKeyToken);
10191010

10201011
Collection<string> formats = null;
10211012
Collection<string> types = null;

test/xUnit/csharp/test_MshSnapinInfo.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public void TestReadRegistryInfo()
1717
Skip.IfNot(Platform.IsWindows);
1818
Version someVersion = null;
1919
string someString = null;
20-
PSSnapInReader.ReadRegistryInfo(out someVersion, out someString, out someString, out someString, out someString, out someVersion);
20+
PSSnapInReader.ReadRegistryInfo(out someVersion, out someString, out someString, out someString, out someVersion);
2121
}
2222

2323
// PublicKeyToken is null on Linux

0 commit comments

Comments
 (0)