[WINESYNC] msi: Wrap around to first record at end of view in MSI_ViewFetch.

Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 547492007e17ed7fe3c2e5ffd5f58f0d46a40048 by Jinoh Kang <jinoh.kang.kr@gmail.com>
This commit is contained in:
winesync 2022-03-14 00:16:45 +01:00 committed by Mark Jansen
parent 47b3e61d62
commit faea5bf012
No known key found for this signature in database
GPG key ID: B39240EE84BEAE8B
2 changed files with 6 additions and 1 deletions

View file

@ -394,6 +394,11 @@ UINT MSI_ViewFetch(MSIQUERY *query, MSIRECORD **prec)
(*prec)->cookie = (UINT64)(ULONG_PTR)query;
MSI_RecordSetInteger(*prec, 0, 1);
}
else if (r == ERROR_NO_MORE_ITEMS)
{
/* end of view; reset cursor to first row */
query->row = 0;
}
return r;
}

View file

@ -9343,7 +9343,7 @@ static void test_viewfetch_wraparound(void)
winetest_push_context( "Record #%d", i );
r = MsiViewFetch( view, &rec );
todo_wine_if(tries > 0) ok( r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r );
ok( r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r );
if (r != ERROR_SUCCESS)
{
winetest_pop_context();