[IMAGEHLP_WINETEST] Add to and fix MSVC build. By Mark Jansen.

svn path=/trunk/; revision=67765
This commit is contained in:
Amine Khaldi 2015-05-16 10:24:11 +00:00
parent 279c4411fa
commit 8d0e6718ae
2 changed files with 8 additions and 9 deletions

View file

@ -32,9 +32,7 @@ add_subdirectory(gdi32)
add_subdirectory(gdiplus) add_subdirectory(gdiplus)
add_subdirectory(hlink) add_subdirectory(hlink)
add_subdirectory(icmp) add_subdirectory(icmp)
if(NOT MSVC) add_subdirectory(imagehlp)
add_subdirectory(imagehlp) # FIXME: msvc build.
endif()
add_subdirectory(imm32) add_subdirectory(imm32)
add_subdirectory(inetcomm) add_subdirectory(inetcomm)
add_subdirectory(inetmib1) add_subdirectory(inetmib1)

View file

@ -56,7 +56,7 @@ struct Imports {
} ibn; } ibn;
char dllname[0x10]; char dllname[0x10];
}; };
#define EXIT_PROCESS (VA_START+RVA_IDATA+FIELD_OFFSET(struct Imports, thunks[0])) #define EXIT_PROCESS (VA_START+RVA_IDATA+FIELD_OFFSET(struct Imports, thunks))
static struct _PeImage { static struct _PeImage {
IMAGE_DOS_HEADER dos_header; IMAGE_DOS_HEADER dos_header;
@ -70,9 +70,9 @@ static struct _PeImage {
char __alignment3[FILE_TOTAL-FILE_IDATA-sizeof(struct Imports)]; char __alignment3[FILE_TOTAL-FILE_IDATA-sizeof(struct Imports)];
} bin = { } bin = {
/* dos header */ /* dos header */
{IMAGE_DOS_SIGNATURE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, {}, 0, 0, {}, FILE_PE_START}, {IMAGE_DOS_SIGNATURE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, {0}, 0, 0, {0}, FILE_PE_START},
/* alignment before PE header */ /* alignment before PE header */
{}, {0},
/* nt headers */ /* nt headers */
{IMAGE_NT_SIGNATURE, {IMAGE_NT_SIGNATURE,
/* basic headers - 3 sections, no symbols, EXE file */ /* basic headers - 3 sections, no symbols, EXE file */
@ -99,7 +99,7 @@ static struct _PeImage {
0, 0, 0, IMAGE_SCN_CNT_INITIALIZED_DATA | IMAGE_SCN_MEM_READ | IMAGE_SCN_MEM_WRITE} 0, 0, 0, IMAGE_SCN_CNT_INITIALIZED_DATA | IMAGE_SCN_MEM_READ | IMAGE_SCN_MEM_WRITE}
}, },
/* alignment before first section */ /* alignment before first section */
{}, {0},
/* .text section */ /* .text section */
{ {
0x31, 0xC0, /* xor eax, eax */ 0x31, 0xC0, /* xor eax, eax */
@ -122,7 +122,7 @@ static struct _PeImage {
"KERNEL32.DLL" "KERNEL32.DLL"
}, },
/* final alignment */ /* final alignment */
{} {0}
}; };
#include <poppack.h> #include <poppack.h>
@ -222,7 +222,8 @@ static const struct expected_blob b1[] = {
{FILE_IDATA-FILE_TEXT, &bin.text_section}, {FILE_IDATA-FILE_TEXT, &bin.text_section},
{sizeof(bin.idata_section.descriptors[0].u.OriginalFirstThunk), {sizeof(bin.idata_section.descriptors[0].u.OriginalFirstThunk),
&bin.idata_section.descriptors[0].u.OriginalFirstThunk}, &bin.idata_section.descriptors[0].u.OriginalFirstThunk},
{FIELD_OFFSET(struct Imports, thunks)-FIELD_OFFSET(struct Imports, descriptors[0].Name), {FIELD_OFFSET(struct Imports, thunks)-
(FIELD_OFFSET(struct Imports, descriptors)+FIELD_OFFSET(IMAGE_IMPORT_DESCRIPTOR, Name)),
&bin.idata_section.descriptors[0].Name}, &bin.idata_section.descriptors[0].Name},
{FILE_TOTAL-FILE_IDATA-FIELD_OFFSET(struct Imports, ibn), {FILE_TOTAL-FILE_IDATA-FIELD_OFFSET(struct Imports, ibn),
&bin.idata_section.ibn} &bin.idata_section.ibn}