mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 8.2.3870: MS-Windows: wrong dir when using right-click context menu
Problem: MS-Windows: wrong working directory when opening two files with right-click context menu. (Gabriel Dupras) Solution: Use the working directory and pass it on to the process creation. (Nir Lichtman, closes #9382, closes #8874)
This commit is contained in:
parent
fa46ead31a
commit
1aeccdb464
@ -776,8 +776,12 @@ STDMETHODIMP CShellExt::InvokeCommand(LPCMINVOKECOMMANDINFO lpcmi)
|
||||
// development.
|
||||
return E_FAIL;
|
||||
}
|
||||
|
||||
LPCMINVOKECOMMANDINFOEX lpcmiex = (LPCMINVOKECOMMANDINFOEX)lpcmi;
|
||||
LPCWSTR currentDirectory = lpcmi->cbSize == sizeof(CMINVOKECOMMANDINFOEX) ? lpcmiex->lpDirectoryW : NULL;
|
||||
|
||||
hr = InvokeSingleGvim(lpcmi->hwnd,
|
||||
lpcmi->lpDirectory,
|
||||
currentDirectory,
|
||||
lpcmi->lpVerb,
|
||||
lpcmi->lpParameters,
|
||||
lpcmi->nShow,
|
||||
@ -884,7 +888,7 @@ searchpath(char *name)
|
||||
|
||||
|
||||
STDMETHODIMP CShellExt::InvokeSingleGvim(HWND hParent,
|
||||
LPCSTR /* pszWorkingDir */,
|
||||
LPCWSTR workingDir,
|
||||
LPCSTR /* pszCmd */,
|
||||
LPCSTR /* pszParam */,
|
||||
int /* iShowCmd */,
|
||||
@ -944,7 +948,7 @@ STDMETHODIMP CShellExt::InvokeSingleGvim(HWND hParent,
|
||||
FALSE, // Set handle inheritance to FALSE.
|
||||
0, // No creation flags.
|
||||
NULL, // Use parent's environment block.
|
||||
NULL, // Use parent's starting directory.
|
||||
workingDir, // Use parent's starting directory.
|
||||
&si, // Pointer to STARTUPINFO structure.
|
||||
&pi) // Pointer to PROCESS_INFORMATION structure.
|
||||
)
|
||||
|
@ -130,7 +130,7 @@ protected:
|
||||
int idHWnd);
|
||||
|
||||
STDMETHODIMP InvokeSingleGvim(HWND hParent,
|
||||
LPCSTR pszWorkingDir,
|
||||
LPCWSTR workingDir,
|
||||
LPCSTR pszCmd,
|
||||
LPCSTR pszParam,
|
||||
int iShowCmd,
|
||||
|
@ -749,6 +749,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
3870,
|
||||
/**/
|
||||
3869,
|
||||
/**/
|
||||
|
Loading…
x
Reference in New Issue
Block a user