mscoree: Partial implement ICLRMetaHost

Alistair Leslie-Hughes leslie_alistair at hotmail.com
Tue Oct 1 21:51:44 CDT 2013


Hi,


Changelog:
     mscoree: Partial implement ICLRMetaHost


Best Regards
  Alistair Leslie-Hughes
-------------- next part --------------
>From 300e5fd06556756ee75926191dbf8f74bf91bcf9 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date: Wed, 2 Oct 2013 12:13:54 +1000
Subject: [PATCH] Partial implement ICLRMetaHost
 RequestRuntimeLoadedNotification
To: wine-patches <wine-patches at winehq.org>

---
 dlls/mscoree/metahost.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/dlls/mscoree/metahost.c b/dlls/mscoree/metahost.c
index 519e991..67361e6 100644
--- a/dlls/mscoree/metahost.c
+++ b/dlls/mscoree/metahost.c
@@ -986,6 +986,8 @@ static const struct IEnumUnknownVtbl InstalledRuntimeEnum_Vtbl = {
 struct CLRMetaHost
 {
     ICLRMetaHost ICLRMetaHost_iface;
+
+    RuntimeLoadedCallbackFnPtr callback;
 };
 
 static struct CLRMetaHost GlobalCLRMetaHost;
@@ -1168,9 +1170,14 @@ static HRESULT WINAPI CLRMetaHost_EnumerateLoadedRuntimes(ICLRMetaHost* iface,
 static HRESULT WINAPI CLRMetaHost_RequestRuntimeLoadedNotification(ICLRMetaHost* iface,
     RuntimeLoadedCallbackFnPtr pCallbackFunction)
 {
-    FIXME("%p\n", pCallbackFunction);
+    FIXME("%p. Callback currently will not be called.\n", pCallbackFunction);
 
-    return E_NOTIMPL;
+    if(!pCallbackFunction)
+        return E_POINTER;
+
+    GlobalCLRMetaHost.callback = pCallbackFunction;
+
+    return S_OK;
 }
 
 static HRESULT WINAPI CLRMetaHost_QueryLegacyV2RuntimeBinding(ICLRMetaHost* iface,
@@ -1208,6 +1215,7 @@ static struct CLRMetaHost GlobalCLRMetaHost = {
 
 HRESULT CLRMetaHost_CreateInstance(REFIID riid, void **ppobj)
 {
+    GlobalCLRMetaHost.callback = NULL;
     return ICLRMetaHost_QueryInterface(&GlobalCLRMetaHost.ICLRMetaHost_iface, riid, ppobj);
 }
 
-- 
1.8.1.2



More information about the wine-patches mailing list