diff --git a/reactos/dll/shellext/ntobjshex/ntobjutil.cpp b/reactos/dll/shellext/ntobjshex/ntobjutil.cpp index 6ca0320082d..d0c3b97aeaa 100644 --- a/reactos/dll/shellext/ntobjshex/ntobjutil.cpp +++ b/reactos/dll/shellext/ntobjshex/ntobjutil.cpp @@ -149,7 +149,7 @@ HRESULT EnumerateNtDirectory(HDPA hdpa, PCWSTR path, UINT * hdpaCount) if (otype < 0) { - entryBufferLength += sizeof(NtPidlTypeData) + sizeof(WCHAR); + entryBufferLength += FIELD_OFFSET(NtPidlTypeData,typeName) + sizeof(WCHAR); if (info->TypeName.Buffer) { @@ -159,7 +159,7 @@ HRESULT EnumerateNtDirectory(HDPA hdpa, PCWSTR path, UINT * hdpaCount) if (otype == SYMBOLICLINK_OBJECT) { - entryBufferLength += sizeof(NtPidlSymlinkData) + sizeof(WCHAR); + entryBufferLength += FIELD_OFFSET(NtPidlSymlinkData,targetName) + sizeof(WCHAR); } DWORD access = STANDARD_RIGHTS_READ; diff --git a/reactos/dll/shellext/ntobjshex/ntobjutil.h b/reactos/dll/shellext/ntobjshex/ntobjutil.h index c56c2e3a7dc..6e40951953e 100644 --- a/reactos/dll/shellext/ntobjshex/ntobjutil.h +++ b/reactos/dll/shellext/ntobjshex/ntobjutil.h @@ -41,7 +41,7 @@ extern const LPCWSTR ObjectTypeNames[]; #include -// NT OBJECT browsere +// NT OBJECT browser struct NtPidlEntry { USHORT cb; @@ -69,7 +69,7 @@ struct NtPidlSymlinkData WCHAR targetName[ANYSIZE_ARRAY]; }; -// REGISTRY browsere +// REGISTRY browser enum REG_ENTRY_TYPE { REG_ENTRY_KEY,