mirror of
https://github.com/reactos/wine.git
synced 2025-02-21 13:23:25 +00:00
msi: Extract cabinets based on DiskId, not LastSequence.
This commit is contained in:
parent
005c0a792e
commit
62dc9ca691
@ -458,7 +458,7 @@ static UINT ready_media_for_file( MSIPACKAGE *package, struct media_info *mi,
|
|||||||
'`','M','e','d','i','a','`',' ','W','H','E','R','E',' ',
|
'`','M','e','d','i','a','`',' ','W','H','E','R','E',' ',
|
||||||
'`','L','a','s','t','S','e','q','u','e','n','c','e','`',' ','>','=',
|
'`','L','a','s','t','S','e','q','u','e','n','c','e','`',' ','>','=',
|
||||||
' ','%', 'i',' ','O','R','D','E','R',' ','B','Y',' ',
|
' ','%', 'i',' ','O','R','D','E','R',' ','B','Y',' ',
|
||||||
'`','L','a','s','t','S','e','q','u','e','n','c','e','`',0};
|
'`','D','i','s','k','I','d','`',0};
|
||||||
LPCWSTR cab, volume;
|
LPCWSTR cab, volume;
|
||||||
DWORD sz;
|
DWORD sz;
|
||||||
INT seq;
|
INT seq;
|
||||||
@ -700,8 +700,13 @@ UINT ACTION_InstallFiles(MSIPACKAGE *package)
|
|||||||
if (file->IsCompressed)
|
if (file->IsCompressed)
|
||||||
{
|
{
|
||||||
if (INVALID_FILE_ATTRIBUTES == GetFileAttributesW(file->TargetPath))
|
if (INVALID_FILE_ATTRIBUTES == GetFileAttributesW(file->TargetPath))
|
||||||
|
{
|
||||||
ERR("compressed file wasn't extracted (%s)\n",
|
ERR("compressed file wasn't extracted (%s)\n",
|
||||||
debugstr_w(file->TargetPath));
|
debugstr_w(file->TargetPath));
|
||||||
|
rc = ERROR_INSTALL_FAILURE;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -839,13 +839,13 @@ static void test_caborder(void)
|
|||||||
create_cab_file("test2.cab", MEDIA_SIZE, "augustus\0");
|
create_cab_file("test2.cab", MEDIA_SIZE, "augustus\0");
|
||||||
|
|
||||||
r = MsiInstallProductA(msifile, NULL);
|
r = MsiInstallProductA(msifile, NULL);
|
||||||
todo_wine
|
|
||||||
{
|
|
||||||
ok(r == ERROR_INSTALL_FAILURE, "Expected ERROR_INSTALL_FAILURE, got %u\n", r);
|
ok(r == ERROR_INSTALL_FAILURE, "Expected ERROR_INSTALL_FAILURE, got %u\n", r);
|
||||||
ok(!delete_pf("msitest\\augustus", TRUE), "File is installed\n");
|
ok(!delete_pf("msitest\\augustus", TRUE), "File is installed\n");
|
||||||
|
todo_wine
|
||||||
|
{
|
||||||
|
ok(!delete_pf("msitest\\maximus", TRUE), "File is installed\n");
|
||||||
ok(!delete_pf("msitest", FALSE), "File is installed\n");
|
ok(!delete_pf("msitest", FALSE), "File is installed\n");
|
||||||
}
|
}
|
||||||
ok(!delete_pf("msitest\\maximus", TRUE), "File is installed\n");
|
|
||||||
|
|
||||||
DeleteFile("test1.cab");
|
DeleteFile("test1.cab");
|
||||||
DeleteFile("test2.cab");
|
DeleteFile("test2.cab");
|
||||||
@ -854,11 +854,11 @@ static void test_caborder(void)
|
|||||||
create_cab_file("test2.cab", MEDIA_SIZE, "maximus\0augustus\0");
|
create_cab_file("test2.cab", MEDIA_SIZE, "maximus\0augustus\0");
|
||||||
|
|
||||||
r = MsiInstallProductA(msifile, NULL);
|
r = MsiInstallProductA(msifile, NULL);
|
||||||
todo_wine
|
|
||||||
{
|
|
||||||
ok(r == ERROR_INSTALL_FAILURE, "Expected ERROR_INSTALL_FAILURE, got %u\n", r);
|
ok(r == ERROR_INSTALL_FAILURE, "Expected ERROR_INSTALL_FAILURE, got %u\n", r);
|
||||||
ok(!delete_pf("msitest\\maximus", TRUE), "File is installed\n");
|
ok(!delete_pf("msitest\\maximus", TRUE), "File is installed\n");
|
||||||
ok(!delete_pf("msitest\\augustus", TRUE), "File is installed\n");
|
ok(!delete_pf("msitest\\augustus", TRUE), "File is installed\n");
|
||||||
|
todo_wine
|
||||||
|
{
|
||||||
ok(!delete_pf("msitest", FALSE), "File is installed\n");
|
ok(!delete_pf("msitest", FALSE), "File is installed\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user