Moved debugging config options to HKCU\Software\Wine\Debug.
diff --git a/dlls/kernel/relay16.c b/dlls/kernel/relay16.c
index d8398ea..e7ac9f8 100644
--- a/dlls/kernel/relay16.c
+++ b/dlls/kernel/relay16.c
@@ -109,30 +109,30 @@
OBJECT_ATTRIBUTES attr;
UNICODE_STRING name;
char buffer[1024];
- HKEY hkey;
+ HKEY root, hkey;
DWORD count;
WCHAR *str;
- static const WCHAR configW[] = {'M','a','c','h','i','n','e','\\',
- 'S','o','f','t','w','a','r','e','\\',
+ static const WCHAR configW[] = {'S','o','f','t','w','a','r','e','\\',
'W','i','n','e','\\',
- 'W','i','n','e','\\',
- 'C','o','n','f','i','g','\\',
'D','e','b','u','g',0};
static const WCHAR RelayIncludeW[] = {'R','e','l','a','y','I','n','c','l','u','d','e',0};
static const WCHAR RelayExcludeW[] = {'R','e','l','a','y','E','x','c','l','u','d','e',0};
static const WCHAR SnoopIncludeW[] = {'S','n','o','o','p','I','n','c','l','u','d','e',0};
static const WCHAR SnoopExcludeW[] = {'S','n','o','o','p','E','x','c','l','u','d','e',0};
+ RtlOpenCurrentUser( KEY_ALL_ACCESS, &root );
attr.Length = sizeof(attr);
- attr.RootDirectory = 0;
+ attr.RootDirectory = root;
attr.ObjectName = &name;
attr.Attributes = 0;
attr.SecurityDescriptor = NULL;
attr.SecurityQualityOfService = NULL;
RtlInitUnicodeString( &name, configW );
- /* @@ Wine registry key: HKLM\Software\Wine\Wine\Config\Debug */
- if (NtOpenKey( &hkey, KEY_ALL_ACCESS, &attr )) return;
+ /* @@ Wine registry key: HKCU\Software\Wine\Debug */
+ if (NtOpenKey( &hkey, KEY_ALL_ACCESS, &attr )) hkey = 0;
+ NtClose( root );
+ if (!hkey) return;
str = (WCHAR *)((KEY_VALUE_PARTIAL_INFORMATION *)buffer)->Data;
RtlInitUnicodeString( &name, RelayIncludeW );
diff --git a/dlls/ntdll/relay.c b/dlls/ntdll/relay.c
index bb1a105..ee5aa49 100644
--- a/dlls/ntdll/relay.c
+++ b/dlls/ntdll/relay.c
@@ -113,14 +113,11 @@
OBJECT_ATTRIBUTES attr;
UNICODE_STRING name;
char buffer[1024];
- HKEY hkey;
+ HKEY root, hkey;
DWORD count;
WCHAR *str;
- static const WCHAR configW[] = {'M','a','c','h','i','n','e','\\',
- 'S','o','f','t','w','a','r','e','\\',
+ static const WCHAR configW[] = {'S','o','f','t','w','a','r','e','\\',
'W','i','n','e','\\',
- 'W','i','n','e','\\',
- 'C','o','n','f','i','g','\\',
'D','e','b','u','g',0};
static const WCHAR RelayIncludeW[] = {'R','e','l','a','y','I','n','c','l','u','d','e',0};
static const WCHAR RelayExcludeW[] = {'R','e','l','a','y','E','x','c','l','u','d','e',0};
@@ -131,16 +128,19 @@
static const WCHAR SnoopFromIncludeW[] = {'S','n','o','o','p','F','r','o','m','I','n','c','l','u','d','e',0};
static const WCHAR SnoopFromExcludeW[] = {'S','n','o','o','p','F','r','o','m','E','x','c','l','u','d','e',0};
+ RtlOpenCurrentUser( KEY_ALL_ACCESS, &root );
attr.Length = sizeof(attr);
- attr.RootDirectory = 0;
+ attr.RootDirectory = root;
attr.ObjectName = &name;
attr.Attributes = 0;
attr.SecurityDescriptor = NULL;
attr.SecurityQualityOfService = NULL;
RtlInitUnicodeString( &name, configW );
- /* @@ Wine registry key: HKLM\Software\Wine\Wine\Config\Debug */
- if (NtOpenKey( &hkey, KEY_ALL_ACCESS, &attr )) return;
+ /* @@ Wine registry key: HKCU\Software\Wine\Debug */
+ if (NtOpenKey( &hkey, KEY_ALL_ACCESS, &attr )) hkey = 0;
+ NtClose( root );
+ if (!hkey) return;
str = (WCHAR *)((KEY_VALUE_PARTIAL_INFORMATION *)buffer)->Data;
RtlInitUnicodeString( &name, RelayIncludeW );
diff --git a/dlls/user/spy.c b/dlls/user/spy.c
index 60769b1..eb7e67d 100644
--- a/dlls/user/spy.c
+++ b/dlls/user/spy.c
@@ -2584,8 +2584,8 @@
if (!TRACE_ON(message)) return TRUE;
indent_tls_index = TlsAlloc();
- /* @@ Wine registry key: HKLM\Software\Wine\Wine\Config\Debug */
- if(!RegOpenKeyA(HKEY_LOCAL_MACHINE, "Software\\Wine\\Wine\\Config\\Debug", &hkey))
+ /* @@ Wine registry key: HKCU\Software\Wine\Debug */
+ if(!RegOpenKeyA(HKEY_CURRENT_USER, "Software\\Wine\\Debug", &hkey))
{
DWORD type, count = sizeof(buffer);