[NTOBJSHEX] Fix displayed registry value type and icon (#4949)

- RegistryTypeNames[]: Remove an unwanted space

- CRegistryFolderExtractIcon::GetIconLocation():
  Add the REG_ENTRY_VALUE_WITH_CONTENT case

- CRegistryFolder::GetDetailsOf(): Fix copypasta

- CRegistryFolder::FormatValueData(): Fix magic constant

CORE-18747
This commit is contained in:
Serge Gautherie 2022-12-21 13:42:36 +01:00 committed by GitHub
parent e0248f4f51
commit 0b6775505a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 3 deletions

View file

@ -43,7 +43,7 @@ const LPCWSTR RegistryTypeNames [] = {
L"REG_MULTI_SZ",
L"REG_RESOURCE_LIST",
L"REG_FULL_RESOURCE_DESCRIPTOR",
L"REG_RESOURCE_REQUIREMENTS_LIST ",
L"REG_RESOURCE_REQUIREMENTS_LIST",
L"REG_QWORD"
};

View file

@ -71,6 +71,7 @@ HRESULT STDMETHODCALLTYPE CRegistryFolderExtractIcon::GetIconLocation(
return S_OK;
case REG_ENTRY_VALUE:
case REG_ENTRY_VALUE_WITH_CONTENT:
GetModuleFileNameW(g_hInstance, szIconFile, cchMax);
*piIndex = -IDI_REGISTRYVALUE;
*pwFlags = flags;
@ -299,7 +300,7 @@ HRESULT STDMETHODCALLTYPE CRegistryFolder::GetDetailsOf(
return MakeStrRetFromString(L"Key", &(psd->str));
}
return MakeStrRetFromString(RegistryTypeNames[info->entryType], &(psd->str));
return MakeStrRetFromString(RegistryTypeNames[info->contentType], &(psd->str));
}
case REGISTRY_COLUMN_VALUE:
@ -490,7 +491,7 @@ HRESULT CRegistryFolder::FormatValueData(DWORD contentType, PVOID td, DWORD cont
{
switch (contentType)
{
case 0:
case REG_NONE:
{
PCWSTR strTodo = L"";
DWORD bufferLength = (wcslen(strTodo) + 1) * sizeof(WCHAR);