Hans Leidekker : webservices: Implement WsGetReaderProperty.
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Sep 15 09:50:50 CDT 2015
Module: wine
Branch: master
Commit: 0e3b3e07ad5d55cb4a6103da80f1f7cc9b777445
URL: http://source.winehq.org/git/wine.git/?a=commit;h=0e3b3e07ad5d55cb4a6103da80f1f7cc9b777445
Author: Hans Leidekker <hans at codeweavers.com>
Date: Tue Sep 15 11:15:35 2015 +0200
webservices: Implement WsGetReaderProperty.
---
dlls/webservices/reader.c | 23 +++++++++++++++++++++++
dlls/webservices/webservices.spec | 2 +-
2 files changed, 24 insertions(+), 1 deletion(-)
diff --git a/dlls/webservices/reader.c b/dlls/webservices/reader.c
index 84802fc..4f4d31c 100644
--- a/dlls/webservices/reader.c
+++ b/dlls/webservices/reader.c
@@ -310,6 +310,15 @@ static HRESULT set_reader_prop( struct reader *reader, WS_XML_READER_PROPERTY_ID
return S_OK;
}
+static HRESULT get_reader_prop( struct reader *reader, WS_XML_READER_PROPERTY_ID id, void *buf, ULONG size )
+{
+ if (id >= reader->prop_count || size != reader_props[id].size)
+ return E_INVALIDARG;
+
+ memcpy( buf, reader->prop[id].value, reader->prop[id].valueSize );
+ return S_OK;
+}
+
/**************************************************************************
* WsCreateReader [webservices.@]
*/
@@ -388,6 +397,20 @@ HRESULT WINAPI WsGetHeapProperty( WS_HEAP *handle, WS_HEAP_PROPERTY_ID id, void
}
/**************************************************************************
+ * WsGetReaderProperty [webservices.@]
+ */
+HRESULT WINAPI WsGetReaderProperty( WS_XML_READER *handle, WS_XML_READER_PROPERTY_ID id,
+ void *buf, ULONG size, WS_ERROR *error )
+{
+ struct reader *reader = (struct reader *)handle;
+
+ TRACE( "%p %u %p %u %p\n", handle, id, buf, size, error );
+ if (error) FIXME( "ignoring error parameter\n" );
+
+ return get_reader_prop( reader, id, buf, size );
+}
+
+/**************************************************************************
* WsSetErrorProperty [webservices.@]
*/
HRESULT WINAPI WsSetErrorProperty( WS_ERROR *handle, WS_ERROR_PROPERTY_ID id, const void *value,
diff --git a/dlls/webservices/webservices.spec b/dlls/webservices/webservices.spec
index 7e0a86b..487c2af 100644
--- a/dlls/webservices/webservices.spec
+++ b/dlls/webservices/webservices.spec
@@ -82,7 +82,7 @@
@ stub WsGetPrefixFromNamespace
@ stub WsGetReaderNode
@ stub WsGetReaderPosition
-@ stub WsGetReaderProperty
+@ stdcall WsGetReaderProperty(ptr long ptr long ptr)
@ stub WsGetSecurityContextProperty
@ stub WsGetSecurityTokenProperty
@ stub WsGetServiceHostProperty
More information about the wine-cvs
mailing list