August 08, 2023 [Issue 24079] New: core.sys.windows.winnt.IMAGE_FIRST_SECTION returns bad pointer | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=24079 Issue ID: 24079 Summary: core.sys.windows.winnt.IMAGE_FIRST_SECTION returns bad pointer Product: D Version: D2 Hardware: All OS: Windows Status: NEW Severity: normal Priority: P1 Component: druntime Assignee: nobody@puremagic.com Reporter: n8sh.secondary@hotmail.com IMAGE_FIRST_SECTION adds an integer representing a number of bytes to a pointer of type IMAGE_OPTIONAL_HEADER* resulting in a change 240 times (IMAGE_OPTIONAL_HEADER64*) or 224 times (IMAGE_OPTIONAL_HEADER32*) as large as intended. https://learn.microsoft.com/en-us/windows/win32/api/winnt/ns-winnt-image_file_header "SizeOfOptionalHeader: The size of the optional header, in bytes." core.sys.windows.winnt.d: --- PIMAGE_SECTION_HEADER IMAGE_FIRST_SECTION(PIMAGE_NT_HEADERS h) { return cast(PIMAGE_SECTION_HEADER) (&h.OptionalHeader + h.FileHeader.SizeOfOptionalHeader); } --- -- |
Copyright © 1999-2021 by the D Language Foundation