From f89eee8439f6c47622799ca32c80513a95381a16 Mon Sep 17 00:00:00 2001 From: Alain Magloire Date: Sun, 19 Oct 2003 05:29:55 +0000 Subject: [PATCH] Remove the dispose and add the ImageBase in value of the symbols. --- .../utils/org/eclipse/cdt/utils/coff/PE.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/PE.java b/core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/PE.java index 4037a5104ea..ba7d1949452 100644 --- a/core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/PE.java +++ b/core/org.eclipse.cdt.core/utils/org/eclipse/cdt/utils/coff/PE.java @@ -499,7 +499,6 @@ public class PE { int size = memory.getInt(); dataDirectories[i] = new ImageDataDirectory(rva, size); } - dispose(); } return dataDirectories; } @@ -515,7 +514,6 @@ public class PE { for (int i = 0; i < scnhdrs.length; i++, offset += SectionHeader.SCNHSZ) { scnhdrs[i] = new SectionHeader(accessFile, offset); } - dispose(); } return scnhdrs; } @@ -527,8 +525,11 @@ public class PE { symbolTable = new Symbol[fileHeader.f_nsyms]; for (int i = 0; i < symbolTable.length; i++, offset += Symbol.SYMSZ) { symbolTable[i] = new Symbol(accessFile, offset); + NTOptionalHeader ntHeader = getNTOptionalHeader(); + // FIXME: What is this again ? + if (ntHeader != null) + symbolTable[i].n_value += ntHeader.ImageBase + ntHeader.FileAlignment; } - dispose(); } return symbolTable; } @@ -551,7 +552,6 @@ public class PE { } else { stringTable = new byte[0]; } - dispose(); } else { stringTable = new byte[0]; }