Module: wine Branch: master Commit: 91bf34f610331ed15f53053f81bde894933ef228 URL: http://source.winehq.org/git/wine.git/?a=commit;h=91bf34f610331ed15f53053f81...
Author: Peter Oberndorfer kumbayo84@arcor.de Date: Tue Feb 6 20:01:10 2007 +0100
msi: Do not use a static variable to save the insertion position for the listview.
---
dlls/msi/dialog.c | 9 +++++---- 1 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/dlls/msi/dialog.c b/dlls/msi/dialog.c index 1c05d75..86f9e00 100644 --- a/dlls/msi/dialog.c +++ b/dlls/msi/dialog.c @@ -2064,6 +2064,7 @@ struct msi_listbox_info HWND hwnd; WNDPROC oldproc; DWORD num_items; + DWORD addpos_items; LPWSTR *items; };
@@ -2099,17 +2100,16 @@ static UINT msi_listbox_add_item( MSIREC { struct msi_listbox_info *info = param; LPCWSTR value, text; - static int index = 0; int pos;
value = MSI_RecordGetString( rec, 3 ); text = MSI_RecordGetString( rec, 4 );
- info->items[index] = strdupW( value ); + info->items[info->addpos_items] = strdupW( value );
pos = SendMessageW( info->hwnd, LB_ADDSTRING, 0, (LPARAM)text ); - SendMessageW( info->hwnd, LB_SETITEMDATA, pos, (LPARAM)info->items[index] ); - index++; + SendMessageW( info->hwnd, LB_SETITEMDATA, pos, (LPARAM)info->items[info->addpos_items] ); + info->addpos_items++; return ERROR_SUCCESS; }
@@ -2189,6 +2189,7 @@ static UINT msi_dialog_list_box( msi_dia info->dialog = dialog; info->hwnd = control->hwnd; info->items = NULL; + info->addpos_items = 0; info->oldproc = (WNDPROC)SetWindowLongPtrW( control->hwnd, GWLP_WNDPROC, (LONG_PTR)MSIListBox_WndProc ); SetPropW( control->hwnd, szButtonData, info );