[SHELL32]

- Quote paths containing spaces when executing shell commands. Patch by Huw Campbell.
CORE-7542 #resolve

svn path=/trunk/; revision=60895
This commit is contained in:
Thomas Faber 2013-11-09 14:31:08 +00:00
parent 3f83392306
commit 6fe2780f3f

View file

@ -238,8 +238,13 @@ BOOL COpenWithList::Execute(COpenWithList::SApp *pApp, LPCWSTR pwszFilePath)
--cchRemaining;
}
else if (pApp->wszCmd[++i] == '1')
{
if (StrChrW(pwszFilePath, L' ') && cchRemaining > 3)
StringCchPrintfExW(pszEnd, cchRemaining, &pszEnd, &cchRemaining, 0, L"\"%ls\"", pwszFilePath);
else
StringCchCopyExW(pszEnd, cchRemaining, pwszFilePath, &pszEnd, &cchRemaining, 0);
}
}
/* NULL-terminate the command string */
if (cchRemaining > 0)
*pszEnd = L'\0';