[PATCH 5/5] msi: Don't check the primary keys when handling MSIMODIFY_DELETE.
Zebediah Figura
z.figura12 at gmail.com
Mon Jan 28 22:11:12 CST 2019
Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
dlls/msi/table.c | 14 +-------------
dlls/msi/tests/db.c | 1 +
2 files changed, 2 insertions(+), 13 deletions(-)
diff --git a/dlls/msi/table.c b/dlls/msi/table.c
index a2b83e27de..57114baa74 100644
--- a/dlls/msi/table.c
+++ b/dlls/msi/table.c
@@ -1835,18 +1835,6 @@ static UINT msi_table_assign(struct tagMSIVIEW *view, MSIRECORD *rec)
return TABLE_insert_row( view, rec, -1, FALSE );
}
-static UINT modify_delete_row( struct tagMSIVIEW *view, MSIRECORD *rec )
-{
- MSITABLEVIEW *tv = (MSITABLEVIEW *)view;
- UINT row, r;
-
- r = msi_table_find_row(tv, rec, &row, NULL);
- if (r != ERROR_SUCCESS)
- return r;
-
- return TABLE_delete_row(view, row);
-}
-
static UINT msi_refresh_record( struct tagMSIVIEW *view, MSIRECORD *rec, UINT row )
{
MSIRECORD *curr;
@@ -1878,7 +1866,7 @@ static UINT TABLE_modify( struct tagMSIVIEW *view, MSIMODIFY eModifyMode,
switch (eModifyMode)
{
case MSIMODIFY_DELETE:
- r = modify_delete_row( view, rec );
+ r = TABLE_delete_row( view, row );
break;
case MSIMODIFY_VALIDATE_NEW:
r = table_validate_new( tv, rec, &column );
diff --git a/dlls/msi/tests/db.c b/dlls/msi/tests/db.c
index 3b0d2ef91e..a823da6003 100644
--- a/dlls/msi/tests/db.c
+++ b/dlls/msi/tests/db.c
@@ -5498,6 +5498,7 @@ static void test_viewmodify_delete(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* delete 2 */
+ MsiRecordSetInteger(hrec, 1, 4);
r = MsiViewModify(hview, MSIMODIFY_DELETE, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
--
2.20.1
More information about the wine-devel
mailing list