[PATCH 2/5] msi: Implement UPDATE queries using msi_select_update().

Zebediah Figura z.figura12 at gmail.com
Mon Jan 28 22:11:09 CST 2019


Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
 dlls/msi/query.h  | 2 ++
 dlls/msi/select.c | 2 +-
 dlls/msi/update.c | 2 +-
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/dlls/msi/query.h b/dlls/msi/query.h
index 063fbb9749..d79c14fd42 100644
--- a/dlls/msi/query.h
+++ b/dlls/msi/query.h
@@ -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 */
diff --git a/dlls/msi/select.c b/dlls/msi/select.c
index 9d3d887f56..ef16e5d09f 100644
--- a/dlls/msi/select.c
+++ b/dlls/msi/select.c
@@ -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;
diff --git a/dlls/msi/update.c b/dlls/msi/update.c
index e61342d11e..4aa03443f0 100644
--- a/dlls/msi/update.c
+++ b/dlls/msi/update.c
@@ -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;
     }
-- 
2.20.1




More information about the wine-devel mailing list