mirror of
https://github.com/reactos/reactos.git
synced 2025-01-01 03:54:02 +00:00
[WINESYNC] dbghelp: Correctly determine the dyld image info address.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org> wine commit id b7defd2946e625351111c36ff0f521b8aa9e6487 by Zebediah Figura <z.figura12@gmail.com>
This commit is contained in:
parent
5a3f69edcc
commit
e9161985e1
2 changed files with 15 additions and 5 deletions
|
@ -1360,18 +1360,28 @@ static ULONG_PTR get_dyld_image_info_address(struct process* pcs)
|
|||
NTSTATUS status;
|
||||
PROCESS_BASIC_INFORMATION pbi;
|
||||
ULONG_PTR dyld_image_info_address = 0;
|
||||
BOOL ret;
|
||||
|
||||
/* Get address of PEB */
|
||||
status = NtQueryInformationProcess(pcs->handle, ProcessBasicInformation, &pbi, sizeof(pbi), NULL);
|
||||
if (status == STATUS_SUCCESS)
|
||||
{
|
||||
/* Read dyld image info address from PEB */
|
||||
if (ReadProcessMemory(pcs->handle, &pbi.PebBaseAddress->Reserved[0],
|
||||
&dyld_image_info_address, sizeof(dyld_image_info_address), NULL))
|
||||
if (!pcs->is_64bit)
|
||||
ret = ReadProcessMemory(pcs->handle, &pbi.PebBaseAddress->Reserved[0],
|
||||
&dyld_image_info_address, sizeof(dyld_image_info_address), NULL);
|
||||
else
|
||||
{
|
||||
TRACE("got dyld_image_info_address 0x%08lx from PEB %p MacDyldImageInfo %p\n",
|
||||
(unsigned long)dyld_image_info_address, pbi.PebBaseAddress, &pbi.PebBaseAddress->Reserved);
|
||||
PEB32 *peb32 = (PEB32 *)pbi.PebBaseAddress;
|
||||
ULONG addr32;
|
||||
ret = ReadProcessMemory(pcs->handle, &peb32->Reserved[0], &addr32,
|
||||
sizeof(addr32), NULL);
|
||||
dyld_image_info_address = addr32;
|
||||
}
|
||||
|
||||
if (ret)
|
||||
TRACE("got dyld_image_info_address %#lx from PEB %p\n",
|
||||
dyld_image_info_address, pbi.PebBaseAddress);
|
||||
}
|
||||
|
||||
#ifndef __LP64__ /* No reading the symtab with nlist(3) in LP64 */
|
||||
|
|
|
@ -3,4 +3,4 @@ directories:
|
|||
files:
|
||||
include/dbghelp.h: sdk/include/psdk/dbghelp.h
|
||||
tags:
|
||||
wine: 42745c068f80b696e7402680a61c2006b68b01d0
|
||||
wine: b7defd2946e625351111c36ff0f521b8aa9e6487
|
||||
|
|
Loading…
Reference in a new issue