Author: akhaldi
Date: Wed Sep 11 00:07:58 2013
New Revision: 60025
URL:
http://svn.reactos.org/svn/reactos?rev=60025&view=rev
Log:
[ADVPACK]
* Sync with Wine 1.7.1.
Modified:
trunk/reactos/dll/win32/advpack/advpack.c
trunk/reactos/dll/win32/advpack/advpack_private.h
trunk/reactos/dll/win32/advpack/files.c
trunk/reactos/dll/win32/advpack/install.c
trunk/reactos/media/doc/README.WINE
Modified: trunk/reactos/dll/win32/advpack/advpack.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/advpack/advpack.…
==============================================================================
--- trunk/reactos/dll/win32/advpack/advpack.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/advpack/advpack.c [iso-8859-1] Wed Sep 11 00:07:58 2013
@@ -177,7 +177,7 @@
FIXME("Need to support changing paths - default will be used\n");
/* set all ldids to dest */
- while ((ptr = get_parameter(&key, ',')))
+ while ((ptr = get_parameter(&key, ',', FALSE)))
{
ldid = atolW(ptr);
SetupSetDirectoryIdW(hInf, ldid, dest);
@@ -510,12 +510,12 @@
cmdline_ptr = cmdline_copy;
lstrcpyW(cmdline_copy, cmdlineW.Buffer);
- ocx_filename = get_parameter(&cmdline_ptr, ',');
+ ocx_filename = get_parameter(&cmdline_ptr, ',', TRUE);
if (!ocx_filename || !*ocx_filename)
goto done;
- str_flags = get_parameter(&cmdline_ptr, ',');
- param = get_parameter(&cmdline_ptr, ',');
+ str_flags = get_parameter(&cmdline_ptr, ',', TRUE);
+ param = get_parameter(&cmdline_ptr, ',', TRUE);
hm = LoadLibraryExW(ocx_filename, NULL, LOAD_WITH_ALTERED_SEARCH_PATH);
if (!hm)
Modified: trunk/reactos/dll/win32/advpack/advpack_private.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/advpack/advpack_…
==============================================================================
--- trunk/reactos/dll/win32/advpack/advpack_private.h [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/advpack/advpack_private.h [iso-8859-1] Wed Sep 11 00:07:58
2013
@@ -22,7 +22,7 @@
#define __ADVPACK_PRIVATE_H
HRESULT do_ocx_reg(HMODULE hocx, BOOL do_reg, const WCHAR *flags, const WCHAR *param)
DECLSPEC_HIDDEN;
-LPWSTR get_parameter(LPWSTR *params, WCHAR separator) DECLSPEC_HIDDEN;
+LPWSTR get_parameter(LPWSTR *params, WCHAR separator, BOOL quoted) DECLSPEC_HIDDEN;
void set_ldids(HINF hInf, LPCWSTR pszInstallSection, LPCWSTR pszWorkingDir)
DECLSPEC_HIDDEN;
HRESULT launch_exe(LPCWSTR cmd, LPCWSTR dir, HANDLE *phEXE) DECLSPEC_HIDDEN;
Modified: trunk/reactos/dll/win32/advpack/files.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/advpack/files.c?…
==============================================================================
--- trunk/reactos/dll/win32/advpack/files.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/advpack/files.c [iso-8859-1] Wed Sep 11 00:07:58 2013
@@ -503,8 +503,8 @@
lstrcpyW(cmdline_copy, cmdline);
/* get the parameters at indexes 0 and 1 respectively */
- szFilename = get_parameter(&cmdline_ptr, ',');
- szFlags = get_parameter(&cmdline_ptr, ',');
+ szFilename = get_parameter(&cmdline_ptr, ',', TRUE);
+ szFlags = get_parameter(&cmdline_ptr, ',', TRUE);
if (szFlags)
dwFlags = atolW(szFlags);
Modified: trunk/reactos/dll/win32/advpack/install.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/advpack/install.…
==============================================================================
--- trunk/reactos/dll/win32/advpack/install.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/advpack/install.c [iso-8859-1] Wed Sep 11 00:07:58 2013
@@ -209,12 +209,23 @@
/* sequentially returns pointers to parameters in a parameter list
* returns NULL if the parameter is empty, e.g. one,,three */
-LPWSTR get_parameter(LPWSTR *params, WCHAR separator)
+LPWSTR get_parameter(LPWSTR *params, WCHAR separator, BOOL quoted)
{
LPWSTR token = *params;
if (!*params)
return NULL;
+
+ if (quoted && *token == '"')
+ {
+ WCHAR *end = strchrW(token + 1, '"');
+ if (end)
+ {
+ *end = 0;
+ *params = end + 1;
+ token = token + 1;
+ }
+ }
*params = strchrW(*params, separator);
if (*params)
@@ -764,10 +775,10 @@
cmdline_ptr = cmdline_copy;
lstrcpyW(cmdline_copy, cmdline);
- inf_filename = get_parameter(&cmdline_ptr, ',');
- install_sec = get_parameter(&cmdline_ptr, ',');
-
- str_flags = get_parameter(&cmdline_ptr, ',');
+ inf_filename = get_parameter(&cmdline_ptr, ',', TRUE);
+ install_sec = get_parameter(&cmdline_ptr, ',', TRUE);
+
+ str_flags = get_parameter(&cmdline_ptr, ',', TRUE);
if (str_flags)
flags = atolW(str_flags);
@@ -857,12 +868,12 @@
cmdline_ptr = cmdline_copy;
lstrcpyW(cmdline_copy, cmdline);
- cabinfo.pszInf = get_parameter(&cmdline_ptr, ',');
- cabinfo.pszSection = get_parameter(&cmdline_ptr, ',');
- cabinfo.pszCab = get_parameter(&cmdline_ptr, ',');
+ cabinfo.pszInf = get_parameter(&cmdline_ptr, ',', TRUE);
+ cabinfo.pszSection = get_parameter(&cmdline_ptr, ',', TRUE);
+ cabinfo.pszCab = get_parameter(&cmdline_ptr, ',', TRUE);
*cabinfo.szSrcPath = '\0';
- flags = get_parameter(&cmdline_ptr, ',');
+ flags = get_parameter(&cmdline_ptr, ',', TRUE);
if (flags)
cabinfo.dwFlags = atolW(flags);
Modified: trunk/reactos/media/doc/README.WINE
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/README.WINE?rev=…
==============================================================================
--- trunk/reactos/media/doc/README.WINE [iso-8859-1] (original)
+++ trunk/reactos/media/doc/README.WINE [iso-8859-1] Wed Sep 11 00:07:58 2013
@@ -41,7 +41,7 @@
reactos/dll/directx/quartz # Synced to Wine-1.5.26
reactos/dll/win32/activeds # Synced to Wine-1.1.43?
reactos/dll/win32/actxprxy # Synced to Wine-1.5.26
-reactos/dll/win32/advpack # Synced to Wine-1.5.26
+reactos/dll/win32/advpack # Synced to Wine-1.7.1
reactos/dll/win32/atl # Synced to Wine-1.5.19
reactos/dll/win32/atl100 # Synced to Wine-1.5.19
reactos/dll/win32/avifil32 # Synced to Wine-1.5.26