Commit 1244b501 authored by Alexandre Julliard's avatar Alexandre Julliard

setupapi: Create fakedlls before copying files.

Some files may come from dll resources. Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent 5d3d73f8
......@@ -1085,6 +1085,13 @@ BOOL WINAPI SetupInstallFromInfSectionW( HWND owner, HINF hinf, PCWSTR section,
if (!iterate_section_fields( hinf, section, L"WinePreInstall", registry_callback, &info ))
return FALSE;
}
if (flags & SPINST_REGSVR)
{
if (iterate_section_fields( hinf, section, L"WineFakeDlls", fake_dlls_callback, NULL ))
cleanup_fake_dlls();
else
return FALSE;
}
if (flags & SPINST_FILES)
{
struct files_callback_info info;
......@@ -1121,24 +1128,14 @@ BOOL WINAPI SetupInstallFromInfSectionW( HWND owner, HINF hinf, PCWSTR section,
}
if (flags & SPINST_REGSVR)
{
struct register_dll_info info;
struct register_dll_info info = { .unregister = FALSE };
HRESULT hr;
info.unregister = FALSE;
info.modules_size = 0;
info.modules_count = 0;
info.modules = NULL;
if (flags & SPINST_REGISTERCALLBACKAWARE)
{
info.callback = callback;
info.callback_context = context;
}
else info.callback = NULL;
if (iterate_section_fields( hinf, section, L"WineFakeDlls", fake_dlls_callback, NULL ))
cleanup_fake_dlls();
else
return FALSE;
hr = CoInitialize(NULL);
......@@ -1153,19 +1150,14 @@ BOOL WINAPI SetupInstallFromInfSectionW( HWND owner, HINF hinf, PCWSTR section,
}
if (flags & SPINST_UNREGSVR)
{
struct register_dll_info info;
struct register_dll_info info = { .unregister = TRUE };
HRESULT hr;
info.unregister = TRUE;
info.modules_size = 0;
info.modules_count = 0;
info.modules = NULL;
if (flags & SPINST_REGISTERCALLBACKAWARE)
{
info.callback = callback;
info.callback_context = context;
}
else info.callback = NULL;
hr = CoInitialize(NULL);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment