mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 9.1.0468: GvimExt does not consult HKEY_CURRENT_USER
Problem: GvimExt does not consult HKEY_CURRENT_USER Solution: Make GvimExt first consult HKEY_CURRENT_USER and then fall back to HKEY_LOCAL_MACHINE to find gvim (David Wagner) fixes: #14904 closes: #14917 Signed-off-by: David Wagner <dwagner@rydia.us> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
parent
9c60890518
commit
84d9611b67
@ -55,9 +55,11 @@ getGvimName(char *name, int runtime)
|
||||
HKEY keyhandle;
|
||||
DWORD hlen;
|
||||
|
||||
// Get the location of gvim from the registry.
|
||||
// Get the location of gvim from the registry. Try
|
||||
// HKEY_CURRENT_USER first, then fall back to HKEY_LOCAL_MACHINE if
|
||||
// not found.
|
||||
name[0] = 0;
|
||||
if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, "Software\\Vim\\Gvim", 0,
|
||||
if (RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\Vim\\Gvim", 0,
|
||||
KEY_READ, &keyhandle) == ERROR_SUCCESS)
|
||||
{
|
||||
hlen = BUFSIZE;
|
||||
@ -69,6 +71,19 @@ getGvimName(char *name, int runtime)
|
||||
RegCloseKey(keyhandle);
|
||||
}
|
||||
|
||||
if ((name[0] == 0) &&
|
||||
(RegOpenKeyEx(HKEY_LOCAL_MACHINE, "Software\\Vim\\Gvim", 0,
|
||||
KEY_READ, &keyhandle) == ERROR_SUCCESS))
|
||||
{
|
||||
hlen = BUFSIZE;
|
||||
if (RegQueryValueEx(keyhandle, "path", 0, NULL, (BYTE *)name, &hlen)
|
||||
!= ERROR_SUCCESS)
|
||||
name[0] = 0;
|
||||
else
|
||||
name[hlen] = 0;
|
||||
RegCloseKey(keyhandle);
|
||||
}
|
||||
|
||||
// Registry didn't work, use the search path.
|
||||
if (name[0] == 0)
|
||||
strcpy(name, searchpath((char *)"gvim.exe"));
|
||||
|
@ -704,6 +704,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
468,
|
||||
/**/
|
||||
467,
|
||||
/**/
|
||||
|
Loading…
x
Reference in New Issue
Block a user