- Update NDK with proper (when possible) RTL structure names that were previously "under review".

- Update relevant source files to new names.

svn path=/trunk/; revision=19375
This commit is contained in:
Alex Ionescu 2005-11-20 17:16:11 +00:00
parent 9acc2d9d19
commit ada897443b
9 changed files with 140 additions and 131 deletions

View file

@ -12,7 +12,6 @@
/* DEPENDENCIES **************************************************************/
#include <cfg.h>
/* FIXME: this needs be implemented in the w32api ddk */
#if defined(_MSC_VER) && !defined(NTOS_MODE_USER)
#include <ntimage.h>
#endif

View file

@ -26,7 +26,7 @@ List:
- Object Directory + implementation doesn't match NT (Alex) [obtypes.h]
Priority 3:
- Some RTL Structures need review (Alex) [rtltypes.h]
- FIXED: Some RTL Structures need review (Alex) [rtltypes.h]
- Pushlock support is needed to fix EPROCESS (Alex) [pstypes.h]
- MADDRESS_SPACE must be converted into the NT Type (Alex) [pstypes.h, mmtypes.h]

View file

@ -1703,7 +1703,7 @@ RtlGetCompressionWorkSpaceSize(
* Debug Info Functions
*/
NTSYSAPI
PDEBUG_BUFFER
PRTL_DEBUG_BUFFER
NTAPI
RtlCreateQueryDebugBuffer(
IN ULONG Size,
@ -1713,7 +1713,7 @@ RtlCreateQueryDebugBuffer(
NTSYSAPI
NTSTATUS
NTAPI
RtlDestroyQueryDebugBuffer(IN PDEBUG_BUFFER DebugBuffer);
RtlDestroyQueryDebugBuffer(IN PRTL_DEBUG_BUFFER DebugBuffer);
NTSYSAPI
NTSTATUS
@ -1721,7 +1721,7 @@ NTAPI
RtlQueryProcessDebugInformation(
IN ULONG ProcessId,
IN ULONG DebugInfoClassMask,
IN OUT PDEBUG_BUFFER DebugBuffer
IN OUT PRTL_DEBUG_BUFFER DebugBuffer
);
/*

View file

@ -34,7 +34,7 @@
#define EXCEPTION_UNWINDING 0x02
#define EXCEPTION_EXIT_UNWIND 0x04
#define EXCEPTION_STACK_INVALID 0x8
#define EXCEPTION_NESTED_CALL 0x10
#define EXCEPTION_NESTED_CALL 0x10F
#define EXCEPTION_TARGET_UNWIND 0x20
#define EXCEPTION_COLLIDED_UNWIND 0x20
@ -228,13 +228,13 @@ RemoveTailList(
((L1)->LowPart == (L2)->LowPart))
#endif
/* FIXME: Rename these */
#define PDI_MODULES 0x01 /* The loaded modules of the process */
#define PDI_BACKTRACE 0x02 /* The heap stack back traces */
#define PDI_HEAPS 0x04 /* The heaps of the process */
#define PDI_HEAP_TAGS 0x08 /* The heap tags */
#define PDI_HEAP_BLOCKS 0x10 /* The heap blocks */
#define PDI_LOCKS 0x20 /* The locks created by the process */
/* RTL Debug Queries */
#define RTL_DEBUG_QUERY_MODULES 0x01
#define RTL_DEBUG_QUERY_BACKTRACES 0x02
#define RTL_DEBUG_QUERY_HEAPS 0x04
#define RTL_DEBUG_QUERY_HEAP_TAGS 0x08
#define RTL_DEBUG_QUERY_HEAP_BLOCKS 0x10
#define RTL_DEBUG_QUERY_LOCKS 0x20
/* RTL Handle Flags */
#define RTL_HANDLE_VALID 0x1
@ -267,7 +267,7 @@ typedef enum _RTL_GENERIC_COMPARE_RESULTS
} RTL_GENERIC_COMPARE_RESULTS;
#endif
typedef enum
typedef enum _RTL_PATH_TYPE
{
INVALID_PATH = 0,
UNC_PATH, /* "//foo" */
@ -277,7 +277,7 @@ typedef enum
RELATIVE_PATH, /* "foo" */
DEVICE_PATH, /* "//./foo" */
UNC_DOT_PATH /* "//." */
} DOS_PATHNAME_TYPE;
} RTL_PATH_TYPE;
/* FUNCTION TYPES ************************************************************/
#ifndef NTOS_MODE_USER
@ -426,24 +426,24 @@ typedef struct _RTL_BITMAP_RUN
typedef struct _COMPRESSED_DATA_INFO
{
USHORT CompressionFormatAndEngine;
UCHAR CompressionUnitShift;
UCHAR ChunkShift;
UCHAR ClusterShift;
UCHAR Reserved;
USHORT NumberOfChunks;
ULONG CompressedChunkSizes[ANYSIZE_ARRAY];
USHORT CompressionFormatAndEngine;
UCHAR CompressionUnitShift;
UCHAR ChunkShift;
UCHAR ClusterShift;
UCHAR Reserved;
USHORT NumberOfChunks;
ULONG CompressedChunkSizes[ANYSIZE_ARRAY];
} COMPRESSED_DATA_INFO, *PCOMPRESSED_DATA_INFO;
typedef struct _GENERATE_NAME_CONTEXT
{
USHORT Checksum;
USHORT Checksum;
BOOLEAN CheckSumInserted;
UCHAR NameLength;
WCHAR NameBuffer[8];
ULONG ExtensionLength;
WCHAR ExtensionBuffer[4];
ULONG LastIndexValue;
UCHAR NameLength;
WCHAR NameBuffer[8];
ULONG ExtensionLength;
WCHAR ExtensionBuffer[4];
ULONG LastIndexValue;
} GENERATE_NAME_CONTEXT, *PGENERATE_NAME_CONTEXT;
typedef struct _RTL_SPLAY_LINKS
@ -549,28 +549,7 @@ typedef struct _ACE
ACCESS_MASK AccessMask;
} ACE, *PACE;
/* FIXME: Review definitions and give these guys a better name */
typedef struct _DEBUG_BUFFER
{
HANDLE SectionHandle;
PVOID SectionBase;
PVOID RemoteSectionBase;
ULONG SectionBaseDelta;
HANDLE EventPairHandle;
ULONG Unknown[2];
HANDLE RemoteThreadHandle;
ULONG InfoClassMask;
ULONG SizeOfInfo;
ULONG AllocatedSize;
ULONG SectionSize;
PVOID ModuleInformation;
PVOID BackTraceInformation;
PVOID HeapInformation;
PVOID LockInformation;
PVOID Reserved[8];
} DEBUG_BUFFER, *PDEBUG_BUFFER;
typedef struct _DEBUG_MODULE_INFORMATION
typedef struct _RTL_PROCESS_MODULE_INFORMATION
{
ULONG Reserved[2];
PVOID Base;
@ -581,9 +560,15 @@ typedef struct _DEBUG_MODULE_INFORMATION
USHORT LoadCount;
USHORT ModuleNameOffset;
CHAR ImageName[256];
} DEBUG_MODULE_INFORMATION, *PDEBUG_MODULE_INFORMATION;
} RTL_PROCESS_MODULE_INFORMATION, *PRTL_PROCESS_MODULE_INFORMATION;
typedef struct _DEBUG_HEAP_INFORMATION
typedef struct _RTL_PROCESS_MODULES
{
ULONG ModuleCount;
RTL_PROCESS_MODULE_INFORMATION ModuleEntry[1];
} RTL_PROCESS_MODULES, *PRTL_PROCESS_MODULES;
typedef struct _RTL_PROCESS_HEAP_INFORMATION
{
PVOID Base;
ULONG Flags;
@ -596,9 +581,15 @@ typedef struct _DEBUG_HEAP_INFORMATION
ULONG Reserved[7];
PVOID Tags;
PVOID Blocks;
} DEBUG_HEAP_INFORMATION, *PDEBUG_HEAP_INFORMATION;
} RTL_PROCESS_HEAP_INFORMATION, *PRTL_PROCESS_HEAP_INFORMATION;
typedef struct _DEBUG_LOCK_INFORMATION
typedef struct _RTL_PROCESS_HEAPS
{
ULONG HeapCount;
RTL_PROCESS_HEAP_INFORMATION HeapEntry[1];
} RTL_PROCESS_HEAPS, *PRTL_PROCESS_HEAPS;
typedef struct _RTL_PROCESS_LOCK_INFORMATION
{
PVOID Address;
USHORT Type;
@ -610,7 +601,45 @@ typedef struct _DEBUG_LOCK_INFORMATION
ULONG RecursionCount;
ULONG NumberOfSharedWaiters;
ULONG NumberOfExclusiveWaiters;
} DEBUG_LOCK_INFORMATION, *PDEBUG_LOCK_INFORMATION;
} RTL_PROCESS_LOCK_INFORMATION, *PRTL_PROCESS_LOCK_INFORMATION;
typedef struct _RTL_PROCESS_LOCKS
{
ULONG LockCount;
RTL_PROCESS_LOCK_INFORMATION LockEntry[1];
} RTL_PROCESS_LOCKS, *PRTL_PROCESS_LOCKS;
typedef struct _RTL_PROCESS_BACKTRACE_INFORMATION
{
/* FIXME */
ULONG Unknown;
} RTL_PROCESS_BACKTRACE_INFORMATION, *PRTL_PROCESS_BACKTRACE_INFORMATION;
typedef struct _RTL_PROCESS_BACKTRACES
{
ULONG BackTraceCount;
RTL_PROCESS_BACKTRACE_INFORMATION BackTraceEntry[1];
} RTL_PROCESS_BACKTRACES, *PRTL_PROCESS_BACKTRACES;
typedef struct _RTL_DEBUG_BUFFER
{
HANDLE SectionHandle;
PVOID SectionBase;
PVOID RemoteSectionBase;
ULONG SectionBaseDelta;
HANDLE EventPairHandle;
ULONG Unknown[2];
HANDLE RemoteThreadHandle;
ULONG InfoClassMask;
ULONG SizeOfInfo;
ULONG AllocatedSize;
ULONG SectionSize;
PRTL_PROCESS_MODULES ModuleInformation;
PRTL_PROCESS_BACKTRACES BackTraceInformation;
PRTL_PROCESS_HEAPS HeapInformation;
PRTL_PROCESS_LOCKS LockInformation;
PVOID Reserved[8];
} RTL_DEBUG_BUFFER, *PRTL_DEBUG_BUFFER;
typedef struct _RTL_HANDLE_TABLE_ENTRY
{
@ -629,25 +658,6 @@ typedef struct _RTL_HANDLE_TABLE
PRTL_HANDLE_TABLE_ENTRY MaxReservedHandles;
} RTL_HANDLE_TABLE, *PRTL_HANDLE_TABLE;
typedef struct _LOCK_INFORMATION
{
ULONG LockCount;
DEBUG_LOCK_INFORMATION LockEntry[1];
} LOCK_INFORMATION, *PLOCK_INFORMATION;
typedef struct _HEAP_INFORMATION
{
ULONG HeapCount;
DEBUG_HEAP_INFORMATION HeapEntry[1];
} HEAP_INFORMATION, *PHEAP_INFORMATION;
typedef struct _MODULE_INFORMATION
{
ULONG ModuleCount;
DEBUG_MODULE_INFORMATION ModuleEntry[1];
} MODULE_INFORMATION, *PMODULE_INFORMATION;
/* END REVIEW AREA */
typedef struct _EXCEPTION_REGISTRATION_RECORD
{
struct _EXCEPTION_REGISTRATION_RECORD *Next;
@ -729,8 +739,8 @@ typedef struct _RTL_RESOURCE
ULONG ExclusiveWaiters;
LONG NumberActive;
HANDLE OwningThread;
ULONG TimeoutBoost; /* ?? */
PVOID DebugInfo; /* ?? */
ULONG TimeoutBoost;
PVOID DebugInfo;
} RTL_RESOURCE, *PRTL_RESOURCE;
typedef struct _RTL_MESSAGE_RESOURCE_ENTRY
@ -757,7 +767,7 @@ typedef struct _NLS_FILE_HEADER
{
USHORT HeaderSize;
USHORT CodePage;
USHORT MaximumCharacterSize; /* SBCS = 1, DBCS = 2 */
USHORT MaximumCharacterSize;
USHORT DefaultChar;
USHORT UniDefaultChar;
USHORT TransDefaultChar;

View file

@ -212,7 +212,7 @@ LdrQueryImageFileExecutionOptions(
NTSTATUS
NTAPI
LdrQueryProcessModuleInformation(
IN PMODULE_INFORMATION ModuleInformation OPTIONAL,
IN PRTL_PROCESS_MODULES ModuleInformation OPTIONAL,
IN ULONG Size OPTIONAL,
OUT PULONG ReturnedSize
);

View file

@ -92,8 +92,8 @@ typedef struct _TH32SNAPSHOT
/* INTERNAL FUNCTIONS *********************************************************/
static VOID
TH32FreeAllocatedResources(PDEBUG_BUFFER HeapDebug,
PDEBUG_BUFFER ModuleDebug,
TH32FreeAllocatedResources(PRTL_DEBUG_BUFFER HeapDebug,
PRTL_DEBUG_BUFFER ModuleDebug,
PVOID ProcThrdInfo,
ULONG ProcThrdInfoSize)
{
@ -118,8 +118,8 @@ TH32FreeAllocatedResources(PDEBUG_BUFFER HeapDebug,
static NTSTATUS
TH32CreateSnapshot(DWORD dwFlags,
DWORD th32ProcessID,
PDEBUG_BUFFER *HeapDebug,
PDEBUG_BUFFER *ModuleDebug,
PRTL_DEBUG_BUFFER *HeapDebug,
PRTL_DEBUG_BUFFER *ModuleDebug,
PVOID *ProcThrdInfo,
ULONG *ProcThrdInfoSize)
{
@ -139,7 +139,7 @@ TH32CreateSnapshot(DWORD dwFlags,
if(*HeapDebug != NULL)
{
Status = RtlQueryProcessDebugInformation(th32ProcessID,
PDI_HEAPS,
RTL_DEBUG_QUERY_HEAPS,
*HeapDebug);
}
else
@ -156,7 +156,7 @@ TH32CreateSnapshot(DWORD dwFlags,
if(*ModuleDebug != NULL)
{
Status = RtlQueryProcessDebugInformation(th32ProcessID,
PDI_MODULES,
RTL_DEBUG_QUERY_MODULES,
*ModuleDebug);
}
else
@ -221,8 +221,8 @@ TH32CreateSnapshot(DWORD dwFlags,
static NTSTATUS
TH32CreateSnapshotSectionInitialize(DWORD dwFlags,
DWORD th32ProcessID,
PDEBUG_BUFFER HeapDebug,
PDEBUG_BUFFER ModuleDebug,
PRTL_DEBUG_BUFFER HeapDebug,
PRTL_DEBUG_BUFFER ModuleDebug,
PVOID ProcThrdInfo,
HANDLE *SectionHandle)
{
@ -239,8 +239,8 @@ TH32CreateSnapshotSectionInitialize(DWORD dwFlags,
ULONG ViewSize, i;
ULONG nProcesses = 0, nThreads = 0, nHeaps = 0, nModules = 0;
ULONG RequiredSnapshotSize = sizeof(TH32SNAPSHOT);
PHEAP_INFORMATION hi = NULL;
PMODULE_INFORMATION mi = NULL;
PRTL_PROCESS_HEAPS hi = NULL;
PRTL_PROCESS_MODULES mi = NULL;
NTSTATUS Status = STATUS_SUCCESS;
/*
@ -248,7 +248,7 @@ TH32CreateSnapshotSectionInitialize(DWORD dwFlags,
*/
if(dwFlags & TH32CS_SNAPHEAPLIST)
{
hi = (PHEAP_INFORMATION)HeapDebug->HeapInformation;
hi = (PRTL_PROCESS_HEAPS)HeapDebug->HeapInformation;
nHeaps = hi->HeapCount;
RequiredSnapshotSize += nHeaps * sizeof(HEAPLIST32);
}
@ -258,7 +258,7 @@ TH32CreateSnapshotSectionInitialize(DWORD dwFlags,
*/
if(dwFlags & TH32CS_SNAPMODULE)
{
mi = (PMODULE_INFORMATION)ModuleDebug->ModuleInformation;
mi = (PRTL_PROCESS_MODULES)ModuleDebug->ModuleInformation;
nModules = mi->ModuleCount;
RequiredSnapshotSize += nModules * sizeof(MODULEENTRY32W);
}
@ -1113,7 +1113,7 @@ HANDLE
STDCALL
CreateToolhelp32Snapshot(DWORD dwFlags, DWORD th32ProcessID)
{
PDEBUG_BUFFER HeapDebug, ModuleDebug;
PRTL_DEBUG_BUFFER HeapDebug, ModuleDebug;
PVOID ProcThrdInfo;
ULONG ProcThrdInfoSize;
NTSTATUS Status;

View file

@ -2643,14 +2643,14 @@ LdrShutdownThread (VOID)
* @implemented
*/
NTSTATUS NTAPI
LdrQueryProcessModuleInformation(IN PMODULE_INFORMATION ModuleInformation OPTIONAL,
LdrQueryProcessModuleInformation(IN PRTL_PROCESS_MODULES ModuleInformation OPTIONAL,
IN ULONG Size OPTIONAL,
OUT PULONG ReturnedSize)
{
PLIST_ENTRY ModuleListHead;
PLIST_ENTRY Entry;
PLDR_DATA_TABLE_ENTRY Module;
PDEBUG_MODULE_INFORMATION ModulePtr = NULL;
PRTL_PROCESS_MODULE_INFORMATION ModulePtr = NULL;
NTSTATUS Status = STATUS_SUCCESS;
ULONG UsedSize = sizeof(ULONG);
ANSI_STRING AnsiString;
@ -2710,7 +2710,7 @@ LdrQueryProcessModuleInformation(IN PMODULE_INFORMATION ModuleInformation OPTION
ModulePtr++;
ModuleInformation->ModuleCount++;
}
UsedSize += sizeof(DEBUG_MODULE_INFORMATION);
UsedSize += sizeof(RTL_PROCESS_MODULE_INFORMATION);
Entry = Entry->Flink;
}

View file

@ -16,12 +16,12 @@
/*
* @unimplemented
*/
PDEBUG_BUFFER NTAPI
PRTL_DEBUG_BUFFER NTAPI
RtlCreateQueryDebugBuffer(IN ULONG Size,
IN BOOLEAN EventPair)
{
NTSTATUS Status;
PDEBUG_BUFFER Buf = NULL;
PRTL_DEBUG_BUFFER Buf = NULL;
ULONG SectionSize = 100 * PAGE_SIZE;
Status = NtAllocateVirtualMemory( NtCurrentProcess(),
@ -47,7 +47,7 @@ RtlCreateQueryDebugBuffer(IN ULONG Size,
* @unimplemented
*/
NTSTATUS NTAPI
RtlDestroyQueryDebugBuffer(IN PDEBUG_BUFFER Buf)
RtlDestroyQueryDebugBuffer(IN PRTL_DEBUG_BUFFER Buf)
{
NTSTATUS Status = STATUS_SUCCESS;
@ -71,7 +71,7 @@ RtlDestroyQueryDebugBuffer(IN PDEBUG_BUFFER Buf)
*/
NTSTATUS NTAPI
RtlpQueryRemoteProcessModules(HANDLE ProcessHandle,
IN PMODULE_INFORMATION ModuleInformation OPTIONAL,
IN PRTL_PROCESS_MODULES ModuleInformation OPTIONAL,
IN ULONG Size OPTIONAL,
OUT PULONG ReturnedSize)
{
@ -81,7 +81,7 @@ RtlpQueryRemoteProcessModules(HANDLE ProcessHandle,
PLIST_ENTRY pleListHead;
PLIST_ENTRY pleCurEntry;
PDEBUG_MODULE_INFORMATION ModulePtr = NULL;
PRTL_PROCESS_MODULE_INFORMATION ModulePtr = NULL;
NTSTATUS Status = STATUS_SUCCESS;
ULONG UsedSize = sizeof(ULONG);
ANSI_STRING AnsiString;
@ -209,7 +209,7 @@ RtlpQueryRemoteProcessModules(HANDLE ProcessHandle,
ModulePtr++;
ModuleInformation->ModuleCount++;
}
UsedSize += sizeof(DEBUG_MODULE_INFORMATION);
UsedSize += sizeof(RTL_PROCESS_MODULE_INFORMATION);
/* address of the next module in the list */
pleCurEntry = lmModule.InLoadOrderModuleList.Flink;
@ -230,13 +230,13 @@ RtlpQueryRemoteProcessModules(HANDLE ProcessHandle,
NTSTATUS NTAPI
RtlQueryProcessDebugInformation(IN ULONG ProcessId,
IN ULONG DebugInfoMask,
IN OUT PDEBUG_BUFFER Buf)
IN OUT PRTL_DEBUG_BUFFER Buf)
{
NTSTATUS Status = STATUS_SUCCESS;
ULONG Pid = (ULONG) NtCurrentTeb()->Cid.UniqueProcess;
Buf->InfoClassMask = DebugInfoMask;
Buf->SizeOfInfo = sizeof(DEBUG_BUFFER);
Buf->SizeOfInfo = sizeof(RTL_DEBUG_BUFFER);
DPRINT("QueryProcessDebugInformation Start\n");
@ -252,13 +252,13 @@ if (ProcessId <= 1)
else
if (Pid == ProcessId)
{
if (DebugInfoMask & PDI_MODULES)
if (DebugInfoMask & RTL_DEBUG_QUERY_MODULES)
{
PMODULE_INFORMATION Mp;
PRTL_PROCESS_MODULES Mp;
ULONG ReturnSize = 0;
ULONG MSize;
Mp = (PMODULE_INFORMATION)(Buf + Buf->SizeOfInfo);
Mp = (PRTL_PROCESS_MODULES)(Buf + Buf->SizeOfInfo);
/* I like this better than the do & while loop. */
Status = LdrQueryProcessModuleInformation( NULL,
@ -272,22 +272,22 @@ if (Pid == ProcessId)
return Status;
}
MSize = Mp->ModuleCount * (sizeof(MODULE_INFORMATION) + 8);
MSize = Mp->ModuleCount * (sizeof(RTL_PROCESS_MODULES) + 8);
Buf->ModuleInformation = Mp;
Buf->SizeOfInfo = Buf->SizeOfInfo + MSize;
}
if (DebugInfoMask & PDI_HEAPS)
if (DebugInfoMask & RTL_DEBUG_QUERY_HEAPS)
{
PHEAP_INFORMATION Hp;
PRTL_PROCESS_HEAPS Hp;
ULONG HSize;
Hp = (PHEAP_INFORMATION)(Buf + Buf->SizeOfInfo);
HSize = sizeof(HEAP_INFORMATION);
if (DebugInfoMask & PDI_HEAP_TAGS)
Hp = (PRTL_PROCESS_HEAPS)(Buf + Buf->SizeOfInfo);
HSize = sizeof(RTL_PROCESS_HEAPS);
if (DebugInfoMask & RTL_DEBUG_QUERY_HEAP_TAGS)
{
}
if (DebugInfoMask & PDI_HEAP_BLOCKS)
if (DebugInfoMask & RTL_DEBUG_QUERY_HEAP_BLOCKS)
{
}
Buf->HeapInformation = Hp;
@ -295,13 +295,13 @@ if (Pid == ProcessId)
}
if (DebugInfoMask & PDI_LOCKS)
if (DebugInfoMask & RTL_DEBUG_QUERY_LOCKS)
{
PLOCK_INFORMATION Lp;
PRTL_PROCESS_LOCKS Lp;
ULONG LSize;
Lp = (PLOCK_INFORMATION)(Buf + Buf->SizeOfInfo);
LSize = sizeof(LOCK_INFORMATION);
Lp = (PRTL_PROCESS_LOCKS)(Buf + Buf->SizeOfInfo);
LSize = sizeof(RTL_PROCESS_LOCKS);
Buf->LockInformation = Lp;
Buf->SizeOfInfo = Buf->SizeOfInfo + LSize;
}
@ -334,13 +334,13 @@ else
return Status;
}
if (DebugInfoMask & PDI_MODULES)
if (DebugInfoMask & RTL_DEBUG_QUERY_MODULES)
{
PMODULE_INFORMATION Mp;
PRTL_PROCESS_MODULES Mp;
ULONG ReturnSize = 0;
ULONG MSize;
Mp = (PMODULE_INFORMATION)(Buf + Buf->SizeOfInfo);
Mp = (PRTL_PROCESS_MODULES)(Buf + Buf->SizeOfInfo);
Status = RtlpQueryRemoteProcessModules( hProcess,
NULL,
@ -356,22 +356,22 @@ else
return Status;
}
MSize = Mp->ModuleCount * (sizeof(MODULE_INFORMATION) + 8);
MSize = Mp->ModuleCount * (sizeof(RTL_PROCESS_MODULES) + 8);
Buf->ModuleInformation = Mp;
Buf->SizeOfInfo = Buf->SizeOfInfo + MSize;
}
if (DebugInfoMask & PDI_HEAPS)
if (DebugInfoMask & RTL_DEBUG_QUERY_HEAPS)
{
PHEAP_INFORMATION Hp;
PRTL_PROCESS_HEAPS Hp;
ULONG HSize;
Hp = (PHEAP_INFORMATION)(Buf + Buf->SizeOfInfo);
HSize = sizeof(HEAP_INFORMATION);
if (DebugInfoMask & PDI_HEAP_TAGS)
Hp = (PRTL_PROCESS_HEAPS)(Buf + Buf->SizeOfInfo);
HSize = sizeof(RTL_PROCESS_HEAPS);
if (DebugInfoMask & RTL_DEBUG_QUERY_HEAP_TAGS)
{
}
if (DebugInfoMask & PDI_HEAP_BLOCKS)
if (DebugInfoMask & RTL_DEBUG_QUERY_HEAP_BLOCKS)
{
}
Buf->HeapInformation = Hp;
@ -379,13 +379,13 @@ else
}
if (DebugInfoMask & PDI_LOCKS)
if (DebugInfoMask & RTL_DEBUG_QUERY_LOCKS)
{
PLOCK_INFORMATION Lp;
PRTL_PROCESS_LOCKS Lp;
ULONG LSize;
Lp = (PLOCK_INFORMATION)(Buf + Buf->SizeOfInfo);
LSize = sizeof(LOCK_INFORMATION);
Lp = (PRTL_PROCESS_LOCKS)(Buf + Buf->SizeOfInfo);
LSize = sizeof(RTL_PROCESS_LOCKS);
Buf->LockInformation = Lp;
Buf->SizeOfInfo = Buf->SizeOfInfo + LSize;
}

View file

@ -498,7 +498,7 @@ static ULONG get_full_path_helper(
ULONG size)
{
ULONG reqsize = 0, mark = 0, dep = 0, deplen;
DOS_PATHNAME_TYPE type;
RTL_PATH_TYPE type;
LPWSTR ins_str = NULL;
LPCWSTR ptr;
const UNICODE_STRING* cd;