OSDN Git Service

Re-commit r278066: Do not ignore SizeOfOptionalHeader in COFF header even if PE heade...
authorRui Ueyama <ruiu@google.com>
Thu, 11 Aug 2016 22:02:44 +0000 (22:02 +0000)
committerRui Ueyama <ruiu@google.com>
Thu, 11 Aug 2016 22:02:44 +0000 (22:02 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278429 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Object/COFFObjectFile.cpp

index a43eca6..a9a8107 100644 (file)
@@ -718,9 +718,11 @@ COFFObjectFile::COFFObjectFile(MemoryBufferRef Object, std::error_code &EC)
     }
     if ((EC = getObject(DataDirectory, Data, DataDirAddr, DataDirSize)))
       return;
-    CurPtr += COFFHeader->SizeOfOptionalHeader;
   }
 
+  if (COFFHeader)
+    CurPtr += COFFHeader->SizeOfOptionalHeader;
+
   if ((EC = getObject(SectionTable, Data, base() + CurPtr,
                       (uint64_t)getNumberOfSections() * sizeof(coff_section))))
     return;