Now that AssemblyBuilder returns a proper AssemblyName we don't need these hacks here anymore.

This commit is contained in:
jfrijters 2009-02-04 06:47:18 +00:00
Родитель f81db0da75
Коммит 05a8a21fcd
1 изменённых файлов: 2 добавлений и 20 удалений

Просмотреть файл

@ -603,21 +603,13 @@ namespace IKVM.Reflection.Emit
if (!referencedAssemblies.TryGetValue(asm, out token)) if (!referencedAssemblies.TryGetValue(asm, out token))
{ {
TableHeap.AssemblyRefTable.Record rec = new TableHeap.AssemblyRefTable.Record(); TableHeap.AssemblyRefTable.Record rec = new TableHeap.AssemblyRefTable.Record();
Version ver = asm.Version ?? new Version(0, 0, 0, 0); Version ver = asm.Version;
rec.MajorVersion = (short)ver.Major; rec.MajorVersion = (short)ver.Major;
rec.MinorVersion = (short)ver.Minor; rec.MinorVersion = (short)ver.Minor;
rec.BuildNumber = (short)ver.Build; rec.BuildNumber = (short)ver.Build;
rec.RevisionNumber = (short)ver.Revision; rec.RevisionNumber = (short)ver.Revision;
rec.Flags = 0; rec.Flags = 0;
byte[] pubkey = asm.GetPublicKeyToken(); rec.PublicKeyOrToken = this.Blobs.Add(ByteBuffer.Wrap(asm.GetPublicKeyToken()));
if (pubkey == null && asm.KeyPair != null)
{
pubkey = GetPublicKeyToken(asm.KeyPair);
}
if (pubkey != null)
{
rec.PublicKeyOrToken = this.Blobs.Add(ByteBuffer.Wrap(pubkey));
}
rec.Name = this.Strings.Add(asm.Name); rec.Name = this.Strings.Add(asm.Name);
rec.Culture = 0; rec.Culture = 0;
rec.HashValue = 0; rec.HashValue = 0;
@ -627,16 +619,6 @@ namespace IKVM.Reflection.Emit
return token; return token;
} }
private byte[] GetPublicKeyToken(StrongNameKeyPair strongNameKeyPair)
{
SHA1Managed sha1 = new SHA1Managed();
byte[] hash = sha1.ComputeHash(strongNameKeyPair.PublicKey);
byte[] token = new byte[8];
Buffer.BlockCopy(hash, hash.Length - 8, token, 0, 8);
Array.Reverse(token);
return token;
}
internal void WriteSymbolTokenMap() internal void WriteSymbolTokenMap()
{ {
for (int i = 0; i < resolvedTokens.Count; i++) for (int i = 0; i < resolvedTokens.Count; i++)