[4/5] msi: Avoid registering duplicate source list information.
Hans Leidekker
hans at codeweavers.com
Mon Mar 7 05:40:20 CST 2011
---
dlls/msi/package.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/dlls/msi/package.c b/dlls/msi/package.c
index 5606d28..8d5fc18 100644
--- a/dlls/msi/package.c
+++ b/dlls/msi/package.c
@@ -2567,6 +2567,11 @@ UINT msi_package_add_info(MSIPACKAGE *package, DWORD context, DWORD options,
{
MSISOURCELISTINFO *info;
+ LIST_FOR_EACH_ENTRY( info, &package->sourcelist_info, MSISOURCELISTINFO, entry )
+ {
+ if (!strcmpW( info->value, value )) return ERROR_SUCCESS;
+ }
+
info = msi_alloc(sizeof(MSISOURCELISTINFO));
if (!info)
return ERROR_OUTOFMEMORY;
@@ -2585,6 +2590,11 @@ UINT msi_package_add_media_disk(MSIPACKAGE *package, DWORD context, DWORD option
{
MSIMEDIADISK *disk;
+ LIST_FOR_EACH_ENTRY( disk, &package->sourcelist_media, MSIMEDIADISK, entry )
+ {
+ if (disk->disk_id == disk_id) return ERROR_SUCCESS;
+ }
+
disk = msi_alloc(sizeof(MSIMEDIADISK));
if (!disk)
return ERROR_OUTOFMEMORY;
--
1.7.1
More information about the wine-patches
mailing list