[ADVPACK] Sync with Wine Staging 4.18. CORE-16441
authorAmine Khaldi <amine.khaldi@reactos.org>
Sat, 26 Oct 2019 12:08:05 +0000 (13:08 +0100)
committerAmine Khaldi <amine.khaldi@reactos.org>
Sat, 26 Oct 2019 12:08:05 +0000 (13:08 +0100)
dll/win32/advpack/advpack.c
dll/win32/advpack/files.c
dll/win32/advpack/install.c
dll/win32/advpack/precomp.h
dll/win32/advpack/reg.c
media/doc/README.WINE

index 2e8027f..f2de8a6 100644 (file)
@@ -20,6 +20,7 @@
  */
 
 #include <stdarg.h>
+#include <stdlib.h>
 
 #include "windef.h"
 #include "winbase.h"
@@ -29,7 +30,6 @@
 #include "winnls.h"
 #include "setupapi.h"
 #include "advpub.h"
-#include "wine/unicode.h"
 #include "wine/debug.h"
 #include "advpack_private.h"
 
@@ -139,7 +139,7 @@ void set_ldids(HINF hInf, LPCWSTR pszInstallSection, LPCWSTR pszWorkingDir)
         /* SetupGetLineTextW returns the value if there is only one key, but
          * returns the whole line if there is more than one key
          */
-        if (!(value = strchrW(line, '=')))
+        if (!(value = wcschr(line, '=')))
         {
             SetupGetStringFieldW(&context, 0, NULL, 0, &size);
             key = HeapAlloc(GetProcessHeap(), 0, size * sizeof(WCHAR));
@@ -158,10 +158,10 @@ void set_ldids(HINF hInf, LPCWSTR pszInstallSection, LPCWSTR pszWorkingDir)
             value++;
 
         /* Extract the flags */
-        ptr = strchrW(value, ',');
+        ptr = wcschr(value, ',');
         if (ptr) {
             *ptr = '\0';
-            flags = atolW(ptr+1);
+            flags = wcstol(ptr+1, NULL, 10);
         }
 
         /* set dest to pszWorkingDir if key is SourceDir */
@@ -177,7 +177,7 @@ void set_ldids(HINF hInf, LPCWSTR pszInstallSection, LPCWSTR pszWorkingDir)
         /* set all ldids to dest */
         while ((ptr = get_parameter(&key, ',', FALSE)))
         {
-            ldid = atolW(ptr);
+            ldid = wcstol(ptr, NULL, 10);
             SetupSetDirectoryIdW(hInf, ldid, dest);
         }
         HeapFree(GetProcessHeap(), 0, key_copy);
index c5efbb2..3e4cb36 100644 (file)
 #include "winbase.h"
 #include "winuser.h"
 #include "winreg.h"
+#include "winnls.h"
 #include "winver.h"
 #include "winternl.h"
 #include "setupapi.h"
 #include "advpub.h"
 #include "fdi.h"
 #include "wine/debug.h"
-#include "wine/unicode.h"
 #include "advpack_private.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(advpack);
@@ -505,7 +505,7 @@ HRESULT WINAPI DelNodeRunDLL32W(HWND hWnd, HINSTANCE hInst, LPWSTR cmdline, INT
     szFlags = get_parameter(&cmdline_ptr, ',', TRUE);
 
     if (szFlags)
-        dwFlags = atolW(szFlags);
+        dwFlags = wcstol(szFlags, NULL, 10);
 
     res = DelNodeW(szFilename, dwFlags);
 
index c3caf3a..70dc4d7 100644 (file)
@@ -31,7 +31,6 @@
 #include "advpub.h"
 #include "ole2.h"
 #include "wine/debug.h"
-#include "wine/unicode.h"
 #include "advpack_private.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(advpack);
@@ -207,7 +206,7 @@ LPWSTR get_parameter(LPWSTR *params, WCHAR separator, BOOL quoted)
 
     if (quoted && *token == '"')
     {
-        WCHAR *end = strchrW(token + 1, '"');
+        WCHAR *end = wcschr(token + 1, '"');
         if (end)
         {
             *end = 0;
@@ -216,7 +215,7 @@ LPWSTR get_parameter(LPWSTR *params, WCHAR separator, BOOL quoted)
         }
     }
 
-    *params = strchrW(*params, separator);
+    *params = wcschr(*params, separator);
     if (*params)
         *(*params)++ = '\0';
 
@@ -397,7 +396,7 @@ static HRESULT get_working_dir(ADVInfo *info, LPCWSTR inf_filename, LPCWSTR work
     static const WCHAR backslash[] = {'\\',0};
     static const WCHAR inf_dir[] = {'\\','I','N','F',0};
 
-    if ((ptr = strrchrW(inf_filename, '\\')))
+    if ((ptr = wcsrchr(inf_filename, '\\')))
     {
         len = ptr - inf_filename + 1;
         ptr = inf_filename;
@@ -451,7 +450,7 @@ static HRESULT install_init(LPCWSTR inf_filename, LPCWSTR install_sec,
         'D','e','f','a','u','l','t','I','n','s','t','a','l','l',0
     };
 
-    if (!(ptr = strrchrW(inf_filename, '\\')))
+    if (!(ptr = wcsrchr(inf_filename, '\\')))
         ptr = inf_filename;
 
     len = lstrlenW(ptr);
@@ -493,7 +492,7 @@ static HRESULT install_init(LPCWSTR inf_filename, LPCWSTR install_sec,
     lstrcatW(info->inf_path, backslash);
     lstrcatW(info->inf_path, info->inf_filename);
 
-    /* RunSetupCommand opens unmodifed filename parameter */
+    /* RunSetupCommand opens unmodified filename parameter */
     if (flags & RSC_FLAG_INF)
         path = inf_filename;
     else
@@ -769,7 +768,7 @@ INT WINAPI LaunchINFSectionW(HWND hWnd, HINSTANCE hInst, LPWSTR cmdline, INT sho
     str_flags = get_parameter(&cmdline_ptr, ',', TRUE);
     if (str_flags)
     {
-        DWORD inf_flags = atolW(str_flags);
+        DWORD inf_flags = wcstol(str_flags, NULL, 10);
         if (inf_flags & LIS_QUIET) flags |= RSC_FLAG_QUIET;
         if (inf_flags & LIS_NOGRPCONV) flags |= RSC_FLAG_NGCONV;
     }
@@ -867,7 +866,7 @@ HRESULT WINAPI LaunchINFSectionExW(HWND hWnd, HINSTANCE hInst, LPWSTR cmdline, I
 
     flags = get_parameter(&cmdline_ptr, ',', TRUE);
     if (flags)
-        cabinfo.dwFlags = atolW(flags);
+        cabinfo.dwFlags = wcstol(flags, NULL, 10);
 
     if (!is_full_path(cabinfo.pszCab) && !is_full_path(cabinfo.pszInf))
     {
@@ -883,7 +882,7 @@ HRESULT WINAPI LaunchINFSectionExW(HWND hWnd, HINSTANCE hInst, LPWSTR cmdline, I
         else
             lstrcpyW(cabinfo.szSrcPath, cabinfo.pszCab);
 
-        ptr = strrchrW(cabinfo.szSrcPath, '\\');
+        ptr = wcsrchr(cabinfo.szSrcPath, '\\');
         *(++ptr) = '\0';
     }
 
index a1c236f..99f9b22 100644 (file)
 #include <winbase.h>
 #include <winuser.h>
 #include <winreg.h>
+#include <winnls.h>
 #include <winternl.h>
 #include <advpub.h>
 
 #include <wine/debug.h>
-#include <wine/unicode.h>
 
 #include "advpack_private.h"
 
index 82c1d2b..d6c4a6d 100644 (file)
 #include "windef.h"
 #include "winbase.h"
 #include "winreg.h"
+#include "winnls.h"
 #include "winerror.h"
 #include "winuser.h"
 #include "winternl.h"
 #include "advpub.h"
-#include "wine/unicode.h"
 #include "wine/debug.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(advpack);
@@ -186,16 +186,16 @@ static HRESULT write_predefined_strings(HMODULE hm, LPCWSTR ini_path)
     *sys_root = '\0';
     GetEnvironmentVariableW(SystemRoot, sys_root, ARRAY_SIZE(sys_root));
 
-    if(!strncmpiW(sys_root, mod_path + 1, strlenW(sys_root)))
+    if(!_wcsnicmp(sys_root, mod_path + 1, lstrlenW(sys_root)))
     {
         *sys_mod_path = '\"';
-        strcpyW(sys_mod_path + 1, escaped_SystemRoot);
-        strcatW(sys_mod_path, mod_path + 1 + strlenW(sys_root));
+        lstrcpyW(sys_mod_path + 1, escaped_SystemRoot);
+        lstrcatW(sys_mod_path, mod_path + 1 + lstrlenW(sys_root));
     }
     else
     {
         FIXME("SYS_MOD_PATH needs more work\n");
-        strcpyW(sys_mod_path, mod_path);
+        lstrcpyW(sys_mod_path, mod_path);
     }
 
     WritePrivateProfileStringW(Strings, SYS_MOD_PATH, sys_mod_path, ini_path);
index e9355bf..1f4ff18 100644 (file)
@@ -45,7 +45,7 @@ dll/directx/wine/wined3d        # Synced to WineStaging-3.3
 
 dll/win32/activeds            # Synced to WineStaging-4.18
 dll/win32/actxprxy            # Synced to WineStaging-3.3
-dll/win32/advpack             # Synced to WineStaging-4.0
+dll/win32/advpack             # Synced to WineStaging-4.18
 dll/win32/atl                 # Synced to WineStaging-4.0
 dll/win32/atl80               # Synced to WineStaging-3.3
 dll/win32/atl100              # Synced to WineStaging-3.3