From 869495efd3b9ed7b1f7d984583b6edecf6fd0368 Mon Sep 17 00:00:00 2001 From: Mike McCormack Date: Fri, 21 Jul 2006 14:05:15 +0900 Subject: [PATCH] msi: Use msi_reg_get_val_str() to read a registry value. --- dlls/msi/msi.c | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/dlls/msi/msi.c b/dlls/msi/msi.c index 0d74524d66e..38e7ce66c8e 100644 --- a/dlls/msi/msi.c +++ b/dlls/msi/msi.c @@ -1572,22 +1572,11 @@ UINT WINAPI MsiProvideQualifiedComponentExW(LPCWSTR szComponent, if (rc != ERROR_SUCCESS) return ERROR_INDEX_ABSENT; - sz = 0; - rc = RegQueryValueExW( hkey, szQualifier, NULL, NULL, NULL, &sz); - if (sz <= 0) - { - RegCloseKey(hkey); - return ERROR_INDEX_ABSENT; - } + info = msi_reg_get_val_str( hkey, szQualifier ); + RegCloseKey(hkey); - info = msi_alloc(sz); - rc = RegQueryValueExW( hkey, szQualifier, NULL, NULL, (LPBYTE)info, &sz); - if (rc != ERROR_SUCCESS) - { - RegCloseKey(hkey); - msi_free(info); + if (!info) return ERROR_INDEX_ABSENT; - } MsiDecomposeDescriptorW(info, product, feature, component, &sz); @@ -1596,7 +1585,6 @@ UINT WINAPI MsiProvideQualifiedComponentExW(LPCWSTR szComponent, else rc = MsiGetComponentPathW(szProduct, component, lpPathBuf, pcchPathBuf); - RegCloseKey(hkey); msi_free(info); if (rc == INSTALLSTATE_LOCAL)