Rebase against 8c34add3bd747d8ff267974de67880b7eb50bc8d

This commit is contained in:
Alistair Leslie-Hughes
2019-07-06 12:41:27 +10:00
parent 52076762ec
commit eba1e9b28a
17 changed files with 165 additions and 168 deletions

View File

@@ -1,4 +1,4 @@
From 256b83d92adbffe2d928e74b95466fefd7cff60b Mon Sep 17 00:00:00 2001
From 5be18984e1d53bb3ca5871a535a5999ec9a1b3b4 Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Thu, 20 Apr 2017 17:08:11 +0800
Subject: [PATCH] setupapi: Fix parameters of SPFILENOTIFY_FILEINCABINET
@@ -11,10 +11,10 @@ Bug 42827 references the setup application that depends on this.
2 files changed, 8 insertions(+), 13 deletions(-)
diff --git a/dlls/setupapi/setupcab.c b/dlls/setupapi/setupcab.c
index 0146e575d41..6a02faa4cb3 100644
index 0581d5f6828..e6b4a36a4ab 100644
--- a/dlls/setupapi/setupcab.c
+++ b/dlls/setupapi/setupcab.c
@@ -323,7 +323,7 @@ static INT_PTR CDECL sc_FNNOTIFY_A(FDINOTIFICATIONTYPE fdint, PFDINOTIFICATION p
@@ -322,7 +322,7 @@ static INT_PTR CDECL sc_FNNOTIFY_A(FDINOTIFICATIONTYPE fdint, PFDINOTIFICATION p
fici.DosAttribs = pfdin->attribs;
memset(fici.FullTargetName, 0, MAX_PATH);
err = phsc->msghandler(phsc->context, SPFILENOTIFY_FILEINCABINET,
@@ -23,7 +23,7 @@ index 0146e575d41..6a02faa4cb3 100644
if (err == FILEOP_DOIT) {
TRACE(" Callback specified filename: %s\n", debugstr_a(fici.FullTargetName));
if (!fici.FullTargetName[0]) {
@@ -459,7 +459,7 @@ static INT_PTR CDECL sc_FNNOTIFY_W(FDINOTIFICATIONTYPE fdint, PFDINOTIFICATION p
@@ -458,7 +458,7 @@ static INT_PTR CDECL sc_FNNOTIFY_W(FDINOTIFICATIONTYPE fdint, PFDINOTIFICATION p
fici.DosAttribs = pfdin->attribs;
memset(fici.FullTargetName, 0, MAX_PATH * sizeof(WCHAR));
err = phsc->msghandler(phsc->context, SPFILENOTIFY_FILEINCABINET,
@@ -32,7 +32,7 @@ index 0146e575d41..6a02faa4cb3 100644
if (err == FILEOP_DOIT) {
TRACE(" Callback specified filename: %s\n", debugstr_w(fici.FullTargetName));
if (fici.FullTargetName[0]) {
@@ -587,8 +587,8 @@ BOOL WINAPI SetupIterateCabinetA(PCSTR CabinetFile, DWORD Reserved,
@@ -586,8 +586,8 @@ BOOL WINAPI SetupIterateCabinetA(PCSTR CabinetFile, DWORD Reserved,
TRACE("path: %s, cabfile: %s\n", debugstr_a(pszCabPath), debugstr_a(pszCabinet));
@@ -43,18 +43,18 @@ index 0146e575d41..6a02faa4cb3 100644
my_hsc.magic = SC_HSC_A_MAGIC;
my_hsc.msghandler = MsgHandler;
@@ -638,19 +638,18 @@ BOOL WINAPI SetupIterateCabinetW(PCWSTR CabinetFile, DWORD Reserved,
@@ -637,19 +637,18 @@ BOOL WINAPI SetupIterateCabinetW(PCWSTR CabinetFile, DWORD Reserved,
}
if (p) {
- strcpyW(my_hsc.most_recent_cabinet_name, p);
- lstrcpyW(my_hsc.most_recent_cabinet_name, p);
+ WideCharToMultiByte(CP_ACP, 0, p, -1, pszCabinet, MAX_PATH, 0, 0);
*p = 0;
len = WideCharToMultiByte(CP_ACP, 0, pszCabPathW, -1, pszCabPath,
MAX_PATH, 0, 0);
if (!len) return FALSE;
} else {
- strcpyW(my_hsc.most_recent_cabinet_name, CabinetFile);
- lstrcpyW(my_hsc.most_recent_cabinet_name, CabinetFile);
+ WideCharToMultiByte(CP_ACP, 0, CabinetFile, -1, pszCabinet, MAX_PATH, 0, 0);
pszCabPath[0] = '\0';
}
@@ -63,7 +63,7 @@ index 0146e575d41..6a02faa4cb3 100644
- pszCabinet, MAX_PATH, 0, 0);
- if (!len) return FALSE;
+ /* remember original cabinet name */
+ strcpyW(my_hsc.most_recent_cabinet_name, CabinetFile);
+ lstrcpyW(my_hsc.most_recent_cabinet_name, CabinetFile);
TRACE("path: %s, cabfile: %s\n",
debugstr_a(pszCabPath), debugstr_a(pszCabinet));
@@ -104,5 +104,5 @@ index 88516a67b0c..2e776e66879 100644
"[%d] Expected cabinet %s, got %s\n",
index, wine_dbgstr_w(ctx->cabinet), wine_dbgstr_w(info->Source));
--
2.17.1
2.20.1