Path: Recognize COFF import library file magic.

Summary: Make identify_magic to recognize COFF import file.

Reviewers: Bigcheese

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D2165

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194852 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rui Ueyama
2013-11-15 21:22:02 +00:00
parent 0cbdb81de7
commit 8a631b2cbe
8 changed files with 27 additions and 0 deletions

View File

@ -848,6 +848,10 @@ error_code has_magic(const Twine &path, const Twine &magic, bool &result) {
return file_magic::unknown;
switch ((unsigned char)Magic[0]) {
case 0x00: {
// COFF short import library file
if (Magic[1] == (char)0x00 && Magic[2] == (char)0xff &&
Magic[3] == (char)0xff)
return file_magic::coff_import_library;
// Windows resource file
const char Expected[] = { 0, 0, 0, 0, '\x20', 0, 0, 0, '\xff' };
if (Magic.size() >= sizeof(Expected) &&