Hans Leidekker : msi: Use msi_get_package_code in msi_publish_product_properties.
Alexandre Julliard
julliard at winehq.org
Wed Jul 18 14:58:04 CDT 2018
Module: wine
Branch: master
Commit: ddf762a82f2c578cd3b0d4ff0c13c8a08641a666
URL: https://source.winehq.org/git/wine.git/?a=commit;h=ddf762a82f2c578cd3b0d4ff0c13c8a08641a666
Author: Hans Leidekker <hans at codeweavers.com>
Date: Wed Jul 18 11:19:54 2018 +0200
msi: Use msi_get_package_code in msi_publish_product_properties.
Signed-off-by: Hans Leidekker <hans at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/msi/action.c | 28 +++++-----------------------
1 file changed, 5 insertions(+), 23 deletions(-)
diff --git a/dlls/msi/action.c b/dlls/msi/action.c
index 15f1876..29c6827 100644
--- a/dlls/msi/action.c
+++ b/dlls/msi/action.c
@@ -4281,10 +4281,8 @@ static UINT msi_publish_product_properties(MSIPACKAGE *package, HKEY hkey)
static const WCHAR szClients[] =
{'C','l','i','e','n','t','s',0};
static const WCHAR szColon[] = {':',0};
- MSIHANDLE hdb, suminfo;
- WCHAR *buffer, *ptr, guids[MAX_PATH], packcode[SQUASHED_GUID_SIZE];
- DWORD langid, size;
- UINT r;
+ WCHAR *buffer, *ptr, *guids, packcode[SQUASHED_GUID_SIZE];
+ DWORD langid;
buffer = msi_dup_property(package->db, INSTALLPROPERTY_PRODUCTNAMEW);
msi_reg_set_val_str(hkey, INSTALLPROPERTY_PRODUCTNAMEW, buffer);
@@ -4318,28 +4316,12 @@ static UINT msi_publish_product_properties(MSIPACKAGE *package, HKEY hkey)
msi_reg_set_val_dword(hkey, INSTALLPROPERTY_INSTANCETYPEW, 0);
msi_reg_set_val_str(hkey, szClients, szColon);
- hdb = alloc_msihandle(&package->db->hdr);
- if (!hdb)
- return ERROR_NOT_ENOUGH_MEMORY;
-
- r = MsiGetSummaryInformationW(hdb, NULL, 0, &suminfo);
- MsiCloseHandle(hdb);
- if (r != ERROR_SUCCESS)
- goto done;
-
- size = MAX_PATH;
- r = MsiSummaryInfoGetPropertyW(suminfo, PID_REVNUMBER, NULL, NULL,
- NULL, guids, &size);
- if (r != ERROR_SUCCESS)
- goto done;
-
- ptr = strchrW(guids, ';');
- if (ptr) *ptr = 0;
+ if (!(guids = msi_get_package_code(package->db))) return ERROR_OUTOFMEMORY;
+ if ((ptr = strchrW(guids, ';'))) *ptr = 0;
squash_guid(guids, packcode);
+ msi_free( guids);
msi_reg_set_val_str(hkey, INSTALLPROPERTY_PACKAGECODEW, packcode);
-done:
- MsiCloseHandle(suminfo);
return ERROR_SUCCESS;
}
More information about the wine-cvs
mailing list