[ADVPACK]

* Sync with Wine 1.7.1.

svn path=/trunk/; revision=60025
This commit is contained in:
Amine Khaldi 2013-09-11 00:07:58 +00:00
parent 2d51bcc269
commit 8516d91fba
5 changed files with 27 additions and 16 deletions

View file

@ -177,7 +177,7 @@ void set_ldids(HINF hInf, LPCWSTR pszInstallSection, LPCWSTR pszWorkingDir)
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 @@ HRESULT WINAPI RegisterOCX(HWND hWnd, HINSTANCE hInst, LPCSTR cmdline, INT show)
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)

View file

@ -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;

View file

@ -503,8 +503,8 @@ HRESULT WINAPI DelNodeRunDLL32W(HWND hWnd, HINSTANCE hInst, LPWSTR cmdline, INT
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);

View file

@ -209,13 +209,24 @@ static HRESULT run_setup_commands_callback(HINF hinf, PCWSTR field, const void *
/* 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)
*(*params)++ = '\0';
@ -764,10 +775,10 @@ INT WINAPI LaunchINFSectionW(HWND hWnd, HINSTANCE hInst, LPWSTR cmdline, INT sho
cmdline_ptr = cmdline_copy;
lstrcpyW(cmdline_copy, cmdline);
inf_filename = get_parameter(&cmdline_ptr, ',');
install_sec = get_parameter(&cmdline_ptr, ',');
inf_filename = get_parameter(&cmdline_ptr, ',', TRUE);
install_sec = get_parameter(&cmdline_ptr, ',', TRUE);
str_flags = get_parameter(&cmdline_ptr, ',');
str_flags = get_parameter(&cmdline_ptr, ',', TRUE);
if (str_flags)
flags = atolW(str_flags);
@ -857,12 +868,12 @@ HRESULT WINAPI LaunchINFSectionExW(HWND hWnd, HINSTANCE hInst, LPWSTR cmdline, I
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);

View file

@ -41,7 +41,7 @@ reactos/dll/directx/qedit # Autosync
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