Alistair Leslie-Hughes : msi: Refreh controls after spawned dialog is closed.
Alexandre Julliard
julliard at wine.codeweavers.com
Wed Feb 3 07:40:01 CST 2016
Module: wine
Branch: stable
Commit: 76130609961f269e7ba61d071c6135203678f7df
URL: http://source.winehq.org/git/wine.git/?a=commit;h=76130609961f269e7ba61d071c6135203678f7df
Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date: Fri Jan 22 20:49:30 2016 +1100
msi: Refreh controls after spawned dialog is closed.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Signed-off-by: Hans Leidekker <hans at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
(cherry picked from commit 434f0f7cb18cc5068be0d48c0c6c981f36c82bd9)
Signed-off-by: Michael Stefaniuc <mstefani at winehq.org>
---
dlls/msi/dialog.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/dlls/msi/dialog.c b/dlls/msi/dialog.c
index 9b61937..245bfdc 100644
--- a/dlls/msi/dialog.c
+++ b/dlls/msi/dialog.c
@@ -556,6 +556,17 @@ static void msi_dialog_update_controls( msi_dialog *dialog, LPCWSTR property )
}
}
+static void msi_dialog_update_all_controls( msi_dialog *dialog )
+{
+ msi_control *control;
+
+ LIST_FOR_EACH_ENTRY( control, &dialog->controls, msi_control, entry )
+ {
+ if ( control->property && control->update )
+ control->update( dialog, control );
+ }
+}
+
static void msi_dialog_set_property( MSIPACKAGE *package, LPCWSTR property, LPCWSTR value )
{
UINT r = msi_set_property( package->db, property, value, -1 );
@@ -4389,7 +4400,11 @@ static UINT event_spawn_dialog( msi_dialog *dialog, const WCHAR *argument )
{
/* don't destroy a modeless dialogs that might be our parent */
event_do_dialog( dialog->package, argument, dialog, FALSE );
- if (dialog->package->CurrentInstallState != ERROR_SUCCESS) msi_dialog_end_dialog( dialog );
+ if (dialog->package->CurrentInstallState != ERROR_SUCCESS)
+ msi_dialog_end_dialog( dialog );
+ else
+ msi_dialog_update_all_controls(dialog);
+
return ERROR_SUCCESS;
}
More information about the wine-cvs
mailing list