[4/9] webservices: Implement WsWriteEndStartElement.
Hans Leidekker
hans at codeweavers.com
Wed Nov 11 04:02:04 CST 2015
Signed-off-by: Hans Leidekker <hans at codeweavers.com>
---
dlls/webservices/webservices.spec | 2 +-
dlls/webservices/writer.c | 22 ++++++++++++++++++++++
2 files changed, 23 insertions(+), 1 deletion(-)
diff --git a/dlls/webservices/webservices.spec b/dlls/webservices/webservices.spec
index 1d811ae..df56adb 100644
--- a/dlls/webservices/webservices.spec
+++ b/dlls/webservices/webservices.spec
@@ -174,7 +174,7 @@
@ stub WsWriteEndAttribute
@ stub WsWriteEndCData
@ stdcall WsWriteEndElement(ptr ptr)
-@ stub WsWriteEndStartElement
+@ stdcall WsWriteEndStartElement(ptr ptr)
@ stub WsWriteEnvelopeEnd
@ stub WsWriteEnvelopeStart
@ stub WsWriteMessageEnd
diff --git a/dlls/webservices/writer.c b/dlls/webservices/writer.c
index feb858f..976f97b 100644
--- a/dlls/webservices/writer.c
+++ b/dlls/webservices/writer.c
@@ -611,6 +611,28 @@ HRESULT WINAPI WsWriteEndElement( WS_XML_WRITER *handle, WS_ERROR *error )
}
/**************************************************************************
+ * WsWriteEndStartElement [webservices.@]
+ */
+HRESULT WINAPI WsWriteEndStartElement( WS_XML_WRITER *handle, WS_ERROR *error )
+{
+ struct writer *writer = (struct writer *)handle;
+ HRESULT hr;
+
+ TRACE( "%p %p\n", handle, error );
+ if (error) FIXME( "ignoring error parameter\n" );
+
+ if (!writer) return E_INVALIDARG;
+ if (writer->state != WRITER_STATE_STARTELEMENT) return WS_E_INVALID_OPERATION;
+
+ if ((hr = write_startelement( writer )) != S_OK) return hr;
+ if ((hr = write_grow_buffer( writer, 1 )) != S_OK) return hr;
+ write_char( writer, '>' );
+
+ writer->state = WRITER_STATE_ENDSTARTELEMENT;
+ return S_OK;
+}
+
+/**************************************************************************
* WsWriteStartElement [webservices.@]
*/
HRESULT WINAPI WsWriteStartElement( WS_XML_WRITER *handle, const WS_XML_STRING *prefix,
--
2.6.2
More information about the wine-patches
mailing list