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

github.com/mono/ikvm-fork.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjfrijters <jfrijters>2015-08-27 15:15:44 +0300
committerjfrijters <jfrijters>2015-08-27 15:15:44 +0300
commitd6b00edf218008ecd8cfe90bc66b9b607431428f (patch)
tree4daba3cdc49a2d997a712dd08f2d7addbc410464
parent9d164ede04a8fb08a709f878a14d57ca4834095f (diff)
Use uint for file position to support >2GB files. Note that PE spec says that 2GB is the maximum valid size.
-rw-r--r--reflect/Emit/ModuleBuilder.cs2
-rw-r--r--reflect/Writer/Heaps.cs4
-rw-r--r--reflect/Writer/MetadataWriter.cs4
-rw-r--r--reflect/Writer/ModuleWriter.cs2
-rw-r--r--reflect/Writer/TextSection.cs2
5 files changed, 7 insertions, 7 deletions
diff --git a/reflect/Emit/ModuleBuilder.cs b/reflect/Emit/ModuleBuilder.cs
index 8ceea42c..571f8e24 100644
--- a/reflect/Emit/ModuleBuilder.cs
+++ b/reflect/Emit/ModuleBuilder.cs
@@ -1133,7 +1133,7 @@ namespace IKVM.Reflection.Emit
}
}
- internal void WriteMetadata(MetadataWriter mw, out int guidHeapOffset)
+ internal void WriteMetadata(MetadataWriter mw, out uint guidHeapOffset)
{
mw.Write(0x424A5342); // Signature ("BSJB")
mw.Write((ushort)1); // MajorVersion
diff --git a/reflect/Writer/Heaps.cs b/reflect/Writer/Heaps.cs
index 54beaa4a..9da3903e 100644
--- a/reflect/Writer/Heaps.cs
+++ b/reflect/Writer/Heaps.cs
@@ -36,7 +36,7 @@ namespace IKVM.Reflection.Writer
internal void Write(MetadataWriter mw)
{
- int pos = mw.Position;
+ uint pos = mw.Position;
WriteImpl(mw);
Debug.Assert(mw.Position == pos + unalignedlength);
int align = Length - unalignedlength;
@@ -136,7 +136,7 @@ namespace IKVM.Reflection.Writer
{
if (table != null && table.RowCount > 0)
{
- int pos = mw.Position;
+ uint pos = mw.Position;
table.Write(mw);
Debug.Assert(mw.Position - pos == table.GetLength(mw));
}
diff --git a/reflect/Writer/MetadataWriter.cs b/reflect/Writer/MetadataWriter.cs
index 9f20571a..11a6d19c 100644
--- a/reflect/Writer/MetadataWriter.cs
+++ b/reflect/Writer/MetadataWriter.cs
@@ -48,9 +48,9 @@ namespace IKVM.Reflection.Writer
get { return moduleBuilder; }
}
- internal int Position
+ internal uint Position
{
- get { return (int)stream.Position; }
+ get { return (uint)stream.Position; }
}
internal void Write(ByteBuffer bb)
diff --git a/reflect/Writer/ModuleWriter.cs b/reflect/Writer/ModuleWriter.cs
index 7ef9c6d6..1e880d58 100644
--- a/reflect/Writer/ModuleWriter.cs
+++ b/reflect/Writer/ModuleWriter.cs
@@ -313,7 +313,7 @@ namespace IKVM.Reflection.Writer
}
stream.Seek(text.PointerToRawData, SeekOrigin.Begin);
- int guidHeapOffset;
+ uint guidHeapOffset;
code.Write(mw, sdata.VirtualAddress, out guidHeapOffset);
if (sdata.SizeOfRawData != 0)
diff --git a/reflect/Writer/TextSection.cs b/reflect/Writer/TextSection.cs
index fceedcf6..e71e8acd 100644
--- a/reflect/Writer/TextSection.cs
+++ b/reflect/Writer/TextSection.cs
@@ -275,7 +275,7 @@ namespace IKVM.Reflection.Writer
}
}
- internal void Write(MetadataWriter mw, uint sdataRVA, out int guidHeapOffset)
+ internal void Write(MetadataWriter mw, uint sdataRVA, out uint guidHeapOffset)
{
// Now that we're ready to start writing, we need to do some fix ups
moduleBuilder.TypeRef.Fixup(moduleBuilder);