[MSI] Sync with Wine Staging 1.9.12. CORE-11266

svn path=/trunk/; revision=71667
This commit is contained in:
Amine Khaldi
2016-06-25 11:27:22 +00:00
parent c0e08dd9be
commit 47da43b8e1
6 changed files with 19 additions and 8 deletions
+14 -5
View File
@@ -2987,11 +2987,7 @@ static void delete_key( const MSICOMPONENT *comp, HKEY root, const WCHAR *path )
{
*p = 0;
if (!p[1]) continue; /* trailing backslash */
#ifdef __REACTOS__ /* CORE-10587 */
hkey = open_key( comp, root, subkey, FALSE, access | READ_CONTROL );
#else
hkey = open_key( comp, root, subkey, FALSE, access );
#endif
if (!hkey) break;
res = RegDeleteKeyExW( hkey, p + 1, access, 0 );
RegCloseKey( hkey );
@@ -5806,6 +5802,7 @@ static UINT ITERATE_InstallService(MSIRECORD *rec, LPVOID param)
LPWSTR name = NULL, disp = NULL, load_order = NULL, serv_name = NULL;
LPWSTR depends = NULL, pass = NULL, args = NULL, image_path = NULL;
DWORD serv_type, start_type, err_control;
BOOL is_vital;
SERVICE_DESCRIPTIONW sd = {NULL};
UINT ret = ERROR_SUCCESS;
@@ -5844,6 +5841,13 @@ static UINT ITERATE_InstallService(MSIRECORD *rec, LPVOID param)
deformat_string(package, MSI_RecordGetString(rec, 11), &args);
deformat_string(package, MSI_RecordGetString(rec, 13), &sd.lpDescription);
/* Should the complete install fail if CreateService fails? */
is_vital = (err_control & msidbServiceInstallErrorControlVital);
/* Remove the msidbServiceInstallErrorControlVital-flag from err_control.
CreateService (under Windows) would fail if not. */
err_control &= ~msidbServiceInstallErrorControlVital;
/* fetch the service path */
row = MSI_QueryGetRecord(package->db, query, comp);
if (!row)
@@ -5885,7 +5889,12 @@ static UINT ITERATE_InstallService(MSIRECORD *rec, LPVOID param)
if (!service)
{
if (GetLastError() != ERROR_SERVICE_EXISTS)
ERR("Failed to create service %s: %d\n", debugstr_w(name), GetLastError());
{
WARN("Failed to create service %s: %d\n", debugstr_w(name), GetLastError());
if (is_vital)
ret = ERROR_INSTALL_FAILURE;
}
}
else if (sd.lpDescription)
{
+1
View File
@@ -527,6 +527,7 @@ __ASM_GLOBAL_FUNC( CUSTOMPROC_wrapper,
__ASM_CFI(".cfi_rel_offset %ebp,0\n\t")
"movl %esp,%ebp\n\t"
__ASM_CFI(".cfi_def_cfa_register %ebp\n\t")
"subl $4,%esp\n\t"
"pushl 12(%ebp)\n\t"
"movl 8(%ebp),%eax\n\t"
"call *%eax\n\t"
+1 -1
View File
@@ -3590,7 +3590,7 @@ static void msi_dialog_adjust_dialog_pos( msi_dialog *dialog, MSIRECORD *rec, LP
dialog->size.cx = sz.cx;
dialog->size.cy = sz.cy;
TRACE("%u %u %u %u\n", pos->left, pos->top, pos->right, pos->bottom);
TRACE("%s\n", wine_dbgstr_rect(pos));
style = GetWindowLongPtrW( dialog->hwnd, GWL_STYLE );
AdjustWindowRect( pos, style, FALSE );
+1
View File
@@ -14,6 +14,7 @@ CUSTOMPROC_wrapper(__MSVC__MsiCustomActionEntryPoint proc, unsigned int handle)
{
push ebp
mov ebp, esp
sub esp, 4
push dword ptr [ebp + 12]
mov eax, dword ptr [ebp + 8]
call eax
+1 -1
View File
@@ -578,7 +578,7 @@ static UINT WHERE_evaluate( MSIWHEREVIEW *wv, const UINT rows[],
default:
ERR("Invalid expression type\n");
break;
return ERROR_FUNCTION_FAILED;
}
return ERROR_SUCCESS;
+1 -1
View File
@@ -114,7 +114,7 @@ reactos/dll/win32/msg711.acm # Synced to WineStaging-1.9.4
reactos/dll/win32/msgsm32.acm # Synced to WineStaging-1.9.4
reactos/dll/win32/mshtml # Synced to WineStaging-1.7.55
reactos/dll/win32/mshtml.tlb # Synced to WineStaging-1.7.55
reactos/dll/win32/msi # Synced to WineStaging-1.9.4
reactos/dll/win32/msi # Synced to WineStaging-1.9.12
reactos/dll/win32/msimg32 # Synced to WineStaging-1.9.4
reactos/dll/win32/msimtf # Synced to WineStaging-1.9.4
reactos/dll/win32/msisip # Synced to WineStaging-1.9.4