[2/2] msxml3: Implement getURI() for IMXAttributes

Nikolay Sivov nsivov at codeweavers.com
Tue Apr 24 03:14:55 CDT 2012


Implement getURI() for IMXAttributes

-------------- next part --------------
>From 05decabf8c82dde12bff9340691d2f7cca7cdc6e Mon Sep 17 00:00:00 2001
From: Nikolay Sivov <nsivov at codeweavers.com>
Date: Tue, 24 Apr 2012 11:32:51 +0400
Subject: [PATCH 2/2] Implement getURI() for IMXAttributes

---
 dlls/msxml3/mxwriter.c |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/dlls/msxml3/mxwriter.c b/dlls/msxml3/mxwriter.c
index 48d9f8d..779ca7a 100644
--- a/dlls/msxml3/mxwriter.c
+++ b/dlls/msxml3/mxwriter.c
@@ -1787,12 +1787,20 @@ static HRESULT WINAPI SAXAttributes_getLength(ISAXAttributes *iface, int *length
     return S_OK;
 }
 
-static HRESULT WINAPI SAXAttributes_getURI(ISAXAttributes *iface, int nIndex, const WCHAR **pUrl,
-    int *pUriSize)
+static HRESULT WINAPI SAXAttributes_getURI(ISAXAttributes *iface, int index, const WCHAR **uri,
+    int *len)
 {
     mxattributes *This = impl_from_ISAXAttributes( iface );
-    FIXME("(%p)->(%d %p %p): stub\n", This, nIndex, pUrl, pUriSize);
-    return E_NOTIMPL;
+
+    TRACE("(%p)->(%d %p %p)\n", This, index, uri, len);
+
+    if (index >= This->length || index < 0) return E_INVALIDARG;
+    if (!uri || !len) return E_POINTER;
+
+    *len = SysStringLen(This->attr[index].uri);
+    *uri = This->attr[index].uri;
+
+    return S_OK;
 }
 
 static HRESULT WINAPI SAXAttributes_getLocalName(ISAXAttributes *iface, int index, const WCHAR **name,
-- 
1.5.6.5




More information about the wine-patches mailing list