diff --git a/reactos/ntoskrnl/cm/ntfunc.c b/reactos/ntoskrnl/cm/ntfunc.c index fdb968701d2..c9e0435b0c9 100644 --- a/reactos/ntoskrnl/cm/ntfunc.c +++ b/reactos/ntoskrnl/cm/ntfunc.c @@ -775,7 +775,8 @@ NtEnumerateValueKey(IN HANDLE KeyHandle, ValueCell->NameSize); } ValueFullInformation->DataOffset = - (ULONG)ValueFullInformation->Name - (ULONG)ValueFullInformation + + (ULONG_PTR)ValueFullInformation->Name - + (ULONG_PTR)ValueFullInformation + ValueFullInformation->NameLength; ValueFullInformation->DataOffset = ROUND_UP(ValueFullInformation->DataOffset, sizeof(PVOID)); @@ -1243,7 +1244,8 @@ NtQueryValueKey(IN HANDLE KeyHandle, ValueCell->NameSize); } ValueFullInformation->DataOffset = - (ULONG)ValueFullInformation->Name - (ULONG)ValueFullInformation + + (ULONG_PTR)ValueFullInformation->Name - + (ULONG_PTR)ValueFullInformation + ValueFullInformation->NameLength; ValueFullInformation->DataOffset = ROUND_UP(ValueFullInformation->DataOffset, sizeof(PVOID)); @@ -1707,11 +1709,11 @@ NtQueryMultipleValueKey (IN HANDLE KeyHandle, if (BufferLength + (ValueCell->DataSize & REG_DATA_SIZE_MASK) <= *Length) { - DataPtr = (PUCHAR)ROUND_UP((ULONG)DataPtr, sizeof(PVOID)); + DataPtr = (PUCHAR)ROUND_UP((ULONG_PTR)DataPtr, sizeof(PVOID)); ValueList[i].Type = ValueCell->DataType; ValueList[i].DataLength = ValueCell->DataSize & REG_DATA_SIZE_MASK; - ValueList[i].DataOffset = (ULONG) DataPtr - (ULONG) Buffer; + ValueList[i].DataOffset = (ULONG_PTR)DataPtr - (ULONG_PTR)Buffer; if (!(ValueCell->DataSize & REG_DATA_IN_OFFSET)) { diff --git a/reactos/ntoskrnl/cm/regfile.c b/reactos/ntoskrnl/cm/regfile.c index 4fea31caed3..433efc0df4b 100644 --- a/reactos/ntoskrnl/cm/regfile.c +++ b/reactos/ntoskrnl/cm/regfile.c @@ -7,7 +7,7 @@ */ #include -#define NDEBUG +//#define NDEBUG #include #include "cm.h" @@ -634,7 +634,7 @@ CmiCheckAndFixHive(PREGISTRY_HIVE RegistryHive) /* Initialize bitmap */ RtlInitializeBitMap(&BlockBitMap, - (PVOID)((ULONG)LogHeader + REG_BLOCK_SIZE + sizeof(ULONG)), + (PVOID)((ULONG_PTR)LogHeader + REG_BLOCK_SIZE + sizeof(ULONG)), BitmapSize * 8); /* FIXME: Update dirty blocks */