Piotr Caban : oleacc: Added Client_get_accChild implementation.

Alexandre Julliard julliard at wine.codeweavers.com
Mon Mar 23 10:03:18 CDT 2015


Module: wine
Branch: master
Commit: 89721ba40dff31f000fc26375c8153fe9772d9ab
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=89721ba40dff31f000fc26375c8153fe9772d9ab

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Sat Mar 21 11:25:39 2015 +0100

oleacc: Added Client_get_accChild implementation.

---

 dlls/oleacc/client.c     |  7 +++++--
 dlls/oleacc/tests/main.c | 13 +++++++++++++
 2 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/dlls/oleacc/client.c b/dlls/oleacc/client.c
index cc7b53a..9456f81 100644
--- a/dlls/oleacc/client.c
+++ b/dlls/oleacc/client.c
@@ -144,8 +144,11 @@ static HRESULT WINAPI Client_get_accChild(IAccessible *iface,
         VARIANT varChildID, IDispatch **ppdispChild)
 {
     Client *This = impl_from_Client(iface);
-    FIXME("(%p)->(%s %p)\n", This, debugstr_variant(&varChildID), ppdispChild);
-    return E_NOTIMPL;
+
+    TRACE("(%p)->(%s %p)\n", This, debugstr_variant(&varChildID), ppdispChild);
+
+    *ppdispChild = NULL;
+    return E_INVALIDARG;
 }
 
 static HRESULT WINAPI Client_get_accName(IAccessible *iface, VARIANT varID, BSTR *pszName)
diff --git a/dlls/oleacc/tests/main.c b/dlls/oleacc/tests/main.c
index 4e92c5e..0a091df 100644
--- a/dlls/oleacc/tests/main.c
+++ b/dlls/oleacc/tests/main.c
@@ -421,6 +421,19 @@ static void test_default_client_accessible_object(void)
 
     V_VT(&vid) = VT_I4;
     V_I4(&vid) = CHILDID_SELF;
+    disp = (void*)0xdeadbeef;
+    hr = IAccessible_get_accChild(acc, vid, &disp);
+    ok(hr == E_INVALIDARG, "get_accChild returned %x\n", hr);
+    ok(disp == NULL, "disp = %p\n", disp);
+
+    V_I4(&vid) = 1;
+    disp = (void*)0xdeadbeef;
+    hr = IAccessible_get_accChild(acc, vid, &disp);
+    ok(hr == E_INVALIDARG, "get_accChild returned %x\n", hr);
+    ok(disp == NULL, "disp = %p\n", disp);
+
+    V_VT(&vid) = VT_I4;
+    V_I4(&vid) = CHILDID_SELF;
     hr = IAccessible_get_accName(acc, vid, &str);
     ok(hr == S_OK, "got %x\n", hr);
     ok(!lstrcmpW(str, testW), "name = %s\n", wine_dbgstr_w(str));




More information about the wine-cvs mailing list