Skip to content

Commit c48520c

Browse files
committed
MachObjectWriter: Fix calculation of segmentFileSize
1 parent a7094a3 commit c48520c

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

src/coreclr/tools/Common/Compiler/ObjectWriter/MachObjectWriter.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,7 @@ private void LayoutSections(bool recordFinalLayout, ref uint fileOffset, out uin
137137
{
138138
ulong virtualAddress = 0;
139139
byte sectionIndex = 1;
140+
uint initialFileOffset = uint.MaxValue;
140141

141142
segmentFileSize = 0;
142143
segmentSize = 0;
@@ -149,9 +150,10 @@ private void LayoutSections(bool recordFinalLayout, ref uint fileOffset, out uin
149150

150151
if (section.IsInFile)
151152
{
153+
initialFileOffset = Math.Min(initialFileOffset, fileOffset);
152154
section.FileOffset = fileOffset;
153155
fileOffset += (uint)section.Size;
154-
segmentFileSize = Math.Max(segmentFileSize, fileOffset);
156+
segmentFileSize = Math.Max(segmentFileSize, fileOffset - initialFileOffset);
155157
}
156158
else
157159
{

0 commit comments

Comments
 (0)