msi: Pass the control name to ControlEvent_SubscribeToEvent instead of uninitialized memory.

This commit is contained in:
Hans Leidekker 2010-05-31 12:13:00 +02:00 committed by Alexandre Julliard
parent 35a0461baa
commit e1a63fd5c2
1 changed files with 6 additions and 4 deletions

View File

@ -774,7 +774,7 @@ static UINT msi_dialog_text_control( msi_dialog *dialog, MSIRECORD *rec )
{
msi_control *control;
struct msi_text_info *info;
LPCWSTR text, ptr, prop;
LPCWSTR text, ptr, prop, control_name;
LPWSTR font_name;
TRACE("%p %p\n", dialog, rec);
@ -787,6 +787,7 @@ static UINT msi_dialog_text_control( msi_dialog *dialog, MSIRECORD *rec )
if( !info )
return ERROR_SUCCESS;
control_name = MSI_RecordGetString( rec, 2 );
control->attributes = MSI_RecordGetInteger( rec, 8 );
prop = MSI_RecordGetString( rec, 9 );
control->property = msi_dialog_dup_property( dialog, prop, FALSE );
@ -805,7 +806,7 @@ static UINT msi_dialog_text_control( msi_dialog *dialog, MSIRECORD *rec )
SetPropW( control->hwnd, szButtonData, info );
ControlEvent_SubscribeToEvent( dialog->package, dialog,
szSelectionPath, control->name, szSelectionPath );
szSelectionPath, control_name, szSelectionPath );
return ERROR_SUCCESS;
}
@ -2390,7 +2391,7 @@ done:
static UINT msi_dialog_selection_tree( msi_dialog *dialog, MSIRECORD *rec )
{
msi_control *control;
LPCWSTR prop;
LPCWSTR prop, control_name;
MSIPACKAGE *package = dialog->package;
DWORD style;
struct msi_selection_tree_info *info;
@ -2410,6 +2411,7 @@ static UINT msi_dialog_selection_tree( msi_dialog *dialog, MSIRECORD *rec )
}
control->handler = msi_dialog_seltree_handler;
control_name = MSI_RecordGetString( rec, 2 );
control->attributes = MSI_RecordGetInteger( rec, 8 );
prop = MSI_RecordGetString( rec, 9 );
control->property = msi_dialog_dup_property( dialog, prop, FALSE );
@ -2422,7 +2424,7 @@ static UINT msi_dialog_selection_tree( msi_dialog *dialog, MSIRECORD *rec )
SetPropW( control->hwnd, szButtonData, info );
ControlEvent_SubscribeToEvent( dialog->package, dialog,
szSelectionPath, control->name, szProperty );
szSelectionPath, control_name, szProperty );
/* initialize it */
msi_seltree_create_imagelist( control->hwnd );