Am Montag, 10. März 2008 02:19:02 schrieb Vitaliy Margolen:
> Jens Nestler wrote:
> > Hello,
> > six weeks ago I've sent this patch for a basic implementation of the
> > RegOverridePredefKey function.
> > Unfortunately the patch was not considered till now.
> > Can everybody help me ?
>
> You have some extra pieces in this patch. When you are submitting patch -
> make sure only one thing is being changed. Here you have some irrelevant
> changes in your patch.
>
> Vitaliy.
Sorry,
unfortunately there was a second patch included (which was already applied).
Please find the revised patch attached.
Jens
diff -urN wine-0.9.54_org/dlls/advapi32/advapi32.spec wine-0.9.54/dlls/advapi32/advapi32.spec
--- wine-0.9.54_org/dlls/advapi32/advapi32.spec 2008-01-25 17:05:38.000000000 +0100
+++ wine-0.9.54/dlls/advapi32/advapi32.spec 2008-02-05 23:42:46.000000000 +0100
@@ -499,7 +499,7 @@
@ stdcall RegOpenKeyExW(long wstr long long ptr)
@ stdcall RegOpenKeyW(long wstr ptr)
@ stdcall RegOpenUserClassesRoot(ptr long long ptr)
-@ stub RegOverridePredefKey
+@ stdcall RegOverridePredefKey(long long)
@ stdcall RegQueryInfoKeyA(long ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr)
@ stdcall RegQueryInfoKeyW(long ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr)
@ stdcall RegQueryMultipleValuesA(long ptr long ptr ptr)
diff -urN wine-0.9.54_org/dlls/advapi32/registry.c wine-0.9.54/dlls/advapi32/registry.c
--- wine-0.9.54_org/dlls/advapi32/registry.c 2008-01-25 17:05:38.000000000 +0100
+++ wine-0.9.54/dlls/advapi32/registry.c 2008-02-05 23:42:46.000000000 +0100
@@ -2408,6 +2408,31 @@
}
/******************************************************************************
+ * RegOverridePredefKey [EMAIL PROTECTED]
+ *
+ * Map a predefined key to another key.
+ *
+ * PARAMS
+ * hkey [I] Handle of a key to map, could be:
+ * HKEY_CLASSES_ROOT / HKEY_CURRENT_CONFIG / HKEY_CURRENT_USER / HKEY_LOCAL_MACHINE / HKEY_PERFORMANCE_DATA / HKEY_USERS
+ * hNewHKey [I] Handle to an open key hkey is mapped to.
+ * RegOverridePredefKey restores the original mapping, if NULL is given
+ *
+ * RETURNS
+ * Success: ERROR_SUCCESS
+ * Failure: nonzero error code from Winerror.h
+ *
+ * FIXME
+ * function must be implemented
+ */
+
+LSTATUS WINAPI RegOverridePredefKey(HKEY hKey, HKEY hNewHKey)
+{
+ FIXME("(%p, %p) stub\n", hKey, hNewHKey);
+ return ERROR_CALL_NOT_IMPLEMENTED;
+}
+
+/******************************************************************************
* load_string [Internal]
*
* This is basically a copy of user32/resource.c's LoadStringW. Necessary to
diff -urN wine-0.9.54_org/include/winreg.h wine-0.9.54/include/winreg.h
--- wine-0.9.54_org/include/winreg.h 2008-01-25 17:05:38.000000000 +0100
+++ wine-0.9.54/include/winreg.h 2008-02-05 23:44:46.000000000 +0100
@@ -143,6 +143,7 @@
WINADVAPI LSTATUS WINAPI RegOpenKeyExA(HKEY,LPCSTR,DWORD,REGSAM,PHKEY);
#define RegOpenKeyEx WINELIB_NAME_AW(RegOpenKeyEx)
WINADVAPI LSTATUS WINAPI RegOpenUserClassesRoot(HANDLE,DWORD,REGSAM,PHKEY);
+WINADVAPI LSTATUS WINAPI RegOverridePredefKey(HKEY,HKEY);
WINADVAPI LSTATUS WINAPI RegQueryInfoKeyW(HKEY,LPWSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPFILETIME);
WINADVAPI LSTATUS WINAPI RegQueryInfoKeyA(HKEY,LPSTR,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPDWORD,LPFILETIME);
#define RegQueryInfoKey WINELIB_NAME_AW(RegQueryInfoKey)