Hans Leidekker : webservices: Implement WsWriteXmlBuffer.

Alexandre Julliard julliard at wine.codeweavers.com
Thu Jan 21 11:22:06 CST 2016


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

Author: Hans Leidekker <hans at codeweavers.com>
Date:   Thu Jan 21 15:27:56 2016 +0100

webservices: Implement WsWriteXmlBuffer.

Signed-off-by: Hans Leidekker <hans at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/webservices/webservices.spec |  2 +-
 dlls/webservices/writer.c         | 19 +++++++++++++++++++
 2 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/dlls/webservices/webservices.spec b/dlls/webservices/webservices.spec
index 5a2baba..42f5b63 100644
--- a/dlls/webservices/webservices.spec
+++ b/dlls/webservices/webservices.spec
@@ -187,7 +187,7 @@
 @ stdcall WsWriteText(ptr ptr ptr)
 @ stub WsWriteType
 @ stub WsWriteValue
-@ stub WsWriteXmlBuffer
+@ stdcall WsWriteXmlBuffer(ptr ptr ptr)
 @ stub WsWriteXmlBufferToBytes
 @ stub WsWriteXmlnsAttribute
 @ stdcall WsXmlStringEquals(ptr ptr ptr)
diff --git a/dlls/webservices/writer.c b/dlls/webservices/writer.c
index d36793a..398d651 100644
--- a/dlls/webservices/writer.c
+++ b/dlls/webservices/writer.c
@@ -773,3 +773,22 @@ HRESULT WINAPI WsWriteText( WS_XML_WRITER *handle, const WS_XML_TEXT *text, WS_E
     elem->attributes[elem->attributeCount - 1]->value = (WS_XML_TEXT *)dst;
     return S_OK;
 }
+
+/**************************************************************************
+ *          WsWriteXmlBuffer		[webservices.@]
+ */
+HRESULT WINAPI WsWriteXmlBuffer( WS_XML_WRITER *handle, WS_XML_BUFFER *buffer, WS_ERROR *error )
+{
+    struct writer *writer = (struct writer *)handle;
+    struct xmlbuf *xmlbuf = (struct xmlbuf *)buffer;
+    HRESULT hr;
+
+    TRACE( "%p %p %p\n", handle, buffer, error );
+    if (error) FIXME( "ignoring error parameter\n" );
+
+    if (!writer || !xmlbuf) return E_INVALIDARG;
+
+    if ((hr = write_grow_buffer( writer, xmlbuf->size )) != S_OK) return hr;
+    write_bytes( writer, xmlbuf->ptr, xmlbuf->size );
+    return S_OK;
+}




More information about the wine-cvs mailing list