msi: Check return value from MSIREG_OpenInstallProps (Coverity)

André Hentschel nerv at dawncrow.de
Sat Jan 4 11:51:17 CST 2014


1147945 & 1147946
checked everywhere else
---
 dlls/msi/msi.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/dlls/msi/msi.c b/dlls/msi/msi.c
index f8a1874..77229c5 100644
--- a/dlls/msi/msi.c
+++ b/dlls/msi/msi.c
@@ -1139,6 +1139,8 @@ static UINT MSI_GetProductInfo(LPCWSTR szProduct, LPCWSTR szAttribute,
     }
 
     MSIREG_OpenInstallProps(szProduct, context, NULL, &userdata, FALSE);
+    if (r != ERROR_SUCCESS)
+        return ERROR_UNKNOWN_PROPERTY;
 
     if (!strcmpW( szAttribute, INSTALLPROPERTY_HELPLINKW ) ||
         !strcmpW( szAttribute, INSTALLPROPERTY_HELPTELEPHONEW ) ||
@@ -1450,14 +1452,16 @@ UINT WINAPI MsiGetProductInfoExW(LPCWSTR szProductCode, LPCWSTR szUserSid,
     if (dwContext == MSIINSTALLCONTEXT_MACHINE && szUserSid)
         return ERROR_INVALID_PARAMETER;
 
+    MSIREG_OpenInstallProps(szProductCode, dwContext, NULL, &props, FALSE);
+    if (r != ERROR_SUCCESS)
+        return ERROR_UNKNOWN_PROPERTY;
+
     /* FIXME: dwContext is provided, no need to search for it */
     MSIREG_OpenProductKey(szProductCode, NULL,MSIINSTALLCONTEXT_USERMANAGED,
                           &managed, FALSE);
     MSIREG_OpenProductKey(szProductCode, NULL, MSIINSTALLCONTEXT_USERUNMANAGED,
                           &prod, FALSE);
 
-    MSIREG_OpenInstallProps(szProductCode, dwContext, NULL, &props, FALSE);
-
     if (dwContext == MSIINSTALLCONTEXT_USERUNMANAGED)
     {
         package = INSTALLPROPERTY_LOCALPACKAGEW;
-- 
1.8.1.2




More information about the wine-patches mailing list