Alexandre Julliard : msi: Ignore min/max versions if their values are null.

Alexandre Julliard julliard at winehq.org
Tue May 25 12:06:07 CDT 2010


Module: wine
Branch: master
Commit: 598a25de82ca6c86340c8bffbaaef2d8a432cd99
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=598a25de82ca6c86340c8bffbaaef2d8a432cd99

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Mon May 24 20:33:28 2010 +0200

msi: Ignore min/max versions if their values are null.

---

 dlls/msi/upgrade.c |   32 ++++++++++++++++++--------------
 1 files changed, 18 insertions(+), 14 deletions(-)

diff --git a/dlls/msi/upgrade.c b/dlls/msi/upgrade.c
index f9e35a4..b131d66 100644
--- a/dlls/msi/upgrade.c
+++ b/dlls/msi/upgrade.c
@@ -151,26 +151,30 @@ static UINT ITERATE_FindRelatedProducts(MSIRECORD *rec, LPVOID param)
                     (LPBYTE)&check, &sz);
             /* check min */
             ver = MSI_RecordGetString(rec,2);
-            comp_ver = msi_version_str_to_dword(ver);
-            r = check - comp_ver; 
-            if (r < 0 || (r == 0 && !(attributes &
-                                    msidbUpgradeAttributesVersionMinInclusive)))
+            if (ver)
             {
-                RegCloseKey(hukey);
-                index ++;
-                continue;
+                comp_ver = msi_version_str_to_dword(ver);
+                r = check - comp_ver;
+                if (r < 0 || (r == 0 && !(attributes & msidbUpgradeAttributesVersionMinInclusive)))
+                {
+                    RegCloseKey(hukey);
+                    index ++;
+                    continue;
+                }
             }
 
             /* check max */
             ver = MSI_RecordGetString(rec,3);
-            comp_ver = msi_version_str_to_dword(ver);
-            r = check - comp_ver;
-            if (r > 0 || (r == 0 && !(attributes & 
-                                    msidbUpgradeAttributesVersionMaxInclusive)))
+            if (ver)
             {
-                RegCloseKey(hukey);
-                index ++;
-                continue;
+                comp_ver = msi_version_str_to_dword(ver);
+                r = check - comp_ver;
+                if (r > 0 || (r == 0 && !(attributes & msidbUpgradeAttributesVersionMaxInclusive)))
+                {
+                    RegCloseKey(hukey);
+                    index ++;
+                    continue;
+                }
             }
 
             /* check language*/




More information about the wine-cvs mailing list