[10/15] msi: Update the UI in the MoveFiles action.
Hans Leidekker
hans at codeweavers.com
Fri Mar 5 05:27:07 CST 2010
---
dlls/msi/action.c | 2 --
dlls/msi/files.c | 14 ++++++++++----
dlls/msi/msipriv.h | 1 +
3 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/dlls/msi/action.c b/dlls/msi/action.c
index cabd153..276250f 100644
--- a/dlls/msi/action.c
+++ b/dlls/msi/action.c
@@ -112,8 +112,6 @@ static const WCHAR szIsolateComponents[] =
{'I','s','o','l','a','t','e','C','o','m','p','o','n','e','n','t','s',0};
static const WCHAR szMigrateFeatureStates[] =
{'M','i','g','r','a','t','e','F','e','a','t','u','r','e','S','t','a','t','e','s',0};
-static const WCHAR szMoveFiles[] =
- {'M','o','v','e','F','i','l','e','s',0};
static const WCHAR szMsiPublishAssemblies[] =
{'M','s','i','P','u','b','l','i','s','h','A','s','s','e','m','b','l','i','e','s',0};
static const WCHAR szMsiUnpublishAssemblies[] =
diff --git a/dlls/msi/files.c b/dlls/msi/files.c
index bf6f1fa..7ccb2c7 100644
--- a/dlls/msi/files.c
+++ b/dlls/msi/files.c
@@ -531,11 +531,10 @@ done:
static UINT ITERATE_MoveFiles( MSIRECORD *rec, LPVOID param )
{
MSIPACKAGE *package = param;
+ MSIRECORD *uirow;
MSICOMPONENT *comp;
LPCWSTR sourcename, component;
- LPWSTR destname = NULL;
- LPWSTR sourcedir = NULL, destdir = NULL;
- LPWSTR source = NULL, dest = NULL;
+ LPWSTR sourcedir, destname = NULL, destdir = NULL, source = NULL, dest = NULL;
int options;
DWORD size;
BOOL ret, wildcards;
@@ -626,7 +625,7 @@ static UINT ITERATE_MoveFiles( MSIRECORD *rec, LPVOID param )
if (!ret)
{
WARN("CreateDirectory failed: %d\n", GetLastError());
- return ERROR_SUCCESS;
+ goto done;
}
}
@@ -636,6 +635,13 @@ static UINT ITERATE_MoveFiles( MSIRECORD *rec, LPVOID param )
move_files_wildcard(source, dest, options);
done:
+ uirow = MSI_CreateRecord( 9 );
+ MSI_RecordSetStringW( uirow, 1, MSI_RecordGetString(rec, 1) );
+ MSI_RecordSetInteger( uirow, 6, 1 ); /* FIXME */
+ MSI_RecordSetStringW( uirow, 9, destdir );
+ ui_actiondata( package, szMoveFiles, uirow );
+ msiobj_release( &uirow->hdr );
+
msi_free(sourcedir);
msi_free(destdir);
msi_free(destname);
diff --git a/dlls/msi/msipriv.h b/dlls/msi/msipriv.h
index 07ee1a8..0516dd1 100644
--- a/dlls/msi/msipriv.h
+++ b/dlls/msi/msipriv.h
@@ -1083,6 +1083,7 @@ static const WCHAR szHLM[] = {'H','K','E','Y','_','L','O','C','A','L','_','M','A
static const WCHAR szHU[] = {'H','K','E','Y','_','U','S','E','R','S','\\',0};
static const WCHAR szWindowsFolder[] = {'W','i','n','d','o','w','s','F','o','l','d','e','r',0};
static const WCHAR szAppSearch[] = {'A','p','p','S','e','a','r','c','h',0};
+static const WCHAR szMoveFiles[] = {'M','o','v','e','F','i','l','e','s',0};
/* memory allocation macro functions */
static void *msi_alloc( size_t len ) __WINE_ALLOC_SIZE(1);
--
1.6.3.3
More information about the wine-patches
mailing list