msi: Implement UPDATE queries using msi_select_update().

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zebediah Figura 2019-01-28 22:11:09 -06:00 committed by Alexandre Julliard
parent 044c1dd23b
commit 40a08f8362
3 changed files with 4 additions and 2 deletions

View file

@ -151,4 +151,6 @@ MSIRECORD *msi_query_merge_record( UINT fields, const column_info *vl, MSIRECORD
UINT msi_create_table( MSIDATABASE *db, LPCWSTR name, column_info *col_info,
MSICONDITION persistent ) DECLSPEC_HIDDEN;
UINT msi_select_update( MSIVIEW *view, MSIRECORD *rec, UINT row ) DECLSPEC_HIDDEN;
#endif /* __WINE_MSI_QUERY_H */

View file

@ -230,7 +230,7 @@ static UINT SELECT_get_column_info( struct tagMSIVIEW *view, UINT n, LPCWSTR *na
type, temporary, table_name );
}
static UINT msi_select_update(struct tagMSIVIEW *view, MSIRECORD *rec, UINT row)
UINT msi_select_update(MSIVIEW *view, MSIRECORD *rec, UINT row)
{
MSISELECTVIEW *sv = (MSISELECTVIEW*)view;
UINT r, i, col, type, val;

View file

@ -113,7 +113,7 @@ static UINT UPDATE_execute( struct tagMSIVIEW *view, MSIRECORD *record )
for ( i=0; i<row_count; i++ )
{
r = wv->ops->set_row( wv, i, values, (1 << col_count) - 1 );
r = msi_select_update( wv, values, i );
if (r != ERROR_SUCCESS)
break;
}