James Hawkins : msi: Revert "msi:
Perform button control events in greatest to least order."
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Oct 17 06:12:25 CDT 2006
Module: wine
Branch: master
Commit: 9119b700ed241391b6c52aecb697713bce529eee
URL: http://source.winehq.org/git/wine.git/?a=commit;h=9119b700ed241391b6c52aecb697713bce529eee
Author: James Hawkins <truiken at gmail.com>
Date: Mon Oct 16 15:44:36 2006 -0700
msi: Revert "msi: Perform button control events in greatest to least order."
---
dlls/msi/dialog.c | 2 +
dlls/msi/msipriv.h | 1 -
dlls/msi/msiquery.c | 77 ---------------------------------------------------
3 files changed, 1 insertions(+), 79 deletions(-)
diff --git a/dlls/msi/dialog.c b/dlls/msi/dialog.c
index 06558de..f40ed76 100644
--- a/dlls/msi/dialog.c
+++ b/dlls/msi/dialog.c
@@ -2912,7 +2912,7 @@ static UINT msi_dialog_button_handler( m
return 0;
}
- r = MSI_ReverseIterateRecords( view, 0, msi_dialog_control_event, dialog );
+ r = MSI_IterateRecords( view, 0, msi_dialog_control_event, dialog );
msiobj_release( &view->hdr );
return r;
diff --git a/dlls/msi/msipriv.h b/dlls/msi/msipriv.h
index d65e0ab..94edb23 100644
--- a/dlls/msi/msipriv.h
+++ b/dlls/msi/msipriv.h
@@ -601,7 +601,6 @@ extern UINT MSI_OpenDatabaseW( LPCWSTR,
extern UINT MSI_DatabaseOpenViewW(MSIDATABASE *, LPCWSTR, MSIQUERY ** );
extern UINT MSI_OpenQuery( MSIDATABASE *, MSIQUERY **, LPCWSTR, ... );
typedef UINT (*record_func)( MSIRECORD *, LPVOID );
-extern UINT MSI_ReverseIterateRecords( MSIQUERY *, DWORD *, record_func, LPVOID );
extern UINT MSI_IterateRecords( MSIQUERY *, DWORD *, record_func, LPVOID );
extern MSIRECORD *MSI_QueryGetRecord( MSIDATABASE *db, LPCWSTR query, ... );
extern UINT MSI_DatabaseImport( MSIDATABASE *, LPCWSTR, LPCWSTR );
diff --git a/dlls/msi/msiquery.c b/dlls/msi/msiquery.c
index 1346969..f91a123 100644
--- a/dlls/msi/msiquery.c
+++ b/dlls/msi/msiquery.c
@@ -27,7 +27,6 @@ #include "winbase.h"
#include "winerror.h"
#include "wine/debug.h"
#include "wine/unicode.h"
-#include "wine/list.h"
#include "msi.h"
#include "msiquery.h"
#include "objbase.h"
@@ -167,82 +166,6 @@ UINT MSI_OpenQuery( MSIDATABASE *db, MSI
return r;
}
-struct rec_list
-{
- struct list entry;
- MSIRECORD *rec;
-};
-
-UINT MSI_ReverseIterateRecords( MSIQUERY *view, DWORD *count,
- record_func func, LPVOID param )
-{
- MSIRECORD *rec = NULL;
- struct rec_list *add_rec;
- struct list records;
- UINT r, n = 0, max = 0;
-
- r = MSI_ViewExecute( view, NULL );
- if( r != ERROR_SUCCESS )
- return r;
-
- list_init( &records );
-
- if( count )
- max = *count;
-
- /* reverse the query */
- for( n = 0; (max == 0) || (n < max); n++ )
- {
- r = MSI_ViewFetch( view, &rec );
- if( r != ERROR_SUCCESS )
- {
- if ( r == ERROR_NO_MORE_ITEMS )
- break;
- else
- goto done;
- }
-
- add_rec = msi_alloc( sizeof( *add_rec ) );
- if (!add_rec)
- goto done;
-
- add_rec->rec = rec;
- list_add_head( &records, &add_rec->entry );
- }
-
- /* iterate over the reversed records */
- n = 0;
- LIST_FOR_EACH_ENTRY( add_rec, &records, struct rec_list, entry )
- {
- if (func)
- r = func( add_rec->rec, param );
-
- msiobj_release( &add_rec->rec->hdr );
- if ( r != ERROR_SUCCESS )
- goto done;
-
- n++;
- }
-
-done:
- MSI_ViewClose( view );
-
- while ( !list_empty( &records ) )
- {
- add_rec = LIST_ENTRY( list_head( &records ), struct rec_list, entry );
- list_remove( &add_rec->entry );
- msi_free( add_rec );
- }
-
- if( count )
- *count = n;
-
- if( r == ERROR_NO_MORE_ITEMS )
- r = ERROR_SUCCESS;
-
- return r;
-}
-
UINT MSI_IterateRecords( MSIQUERY *view, DWORD *count,
record_func func, LPVOID param )
{
More information about the wine-cvs
mailing list