Module: wine Branch: master Commit: 5a1a7455707ae73fc128d741ea52bde35e74117a URL: http://source.winehq.org/git/wine.git/?a=commit;h=5a1a7455707ae73fc128d741ea...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Sat Jun 15 00:54:44 2013 +0400
xmllite: Store prefix for start tag and return it.
---
dlls/xmllite/reader.c | 14 +++++++++----- 1 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/dlls/xmllite/reader.c b/dlls/xmllite/reader.c index 5256c35..9193d2f 100644 --- a/dlls/xmllite/reader.c +++ b/dlls/xmllite/reader.c @@ -80,6 +80,7 @@ typedef enum typedef enum { StringValue_LocalName, + StringValue_Prefix, StringValue_QualifiedName, StringValue_Value, StringValue_Last @@ -1749,6 +1750,7 @@ static HRESULT reader_parse_element(xmlreader *reader) reader->nodetype = XmlNodeType_Element; reader->resumestate = XmlReadResumeState_Initial; reader_set_strvalue(reader, StringValue_LocalName, &local); + reader_set_strvalue(reader, StringValue_Prefix, &prefix); reader_set_strvalue(reader, StringValue_QualifiedName, &qname); break; } @@ -2260,12 +2262,14 @@ static HRESULT WINAPI xmlreader_GetLocalName(IXmlReader* iface, LPCWSTR *name, U return S_OK; }
-static HRESULT WINAPI xmlreader_GetPrefix(IXmlReader* iface, - LPCWSTR *prefix, - UINT *prefix_length) +static HRESULT WINAPI xmlreader_GetPrefix(IXmlReader* iface, LPCWSTR *prefix, UINT *len) { - FIXME("(%p %p %p): stub\n", iface, prefix, prefix_length); - return E_NOTIMPL; + xmlreader *This = impl_from_IXmlReader(iface); + + TRACE("(%p)->(%p %p)\n", This, prefix, len); + *prefix = This->strvalues[StringValue_Prefix].str; + if (len) *len = This->strvalues[StringValue_Prefix].len; + return S_OK; }
static HRESULT WINAPI xmlreader_GetValue(IXmlReader* iface, const WCHAR **value, UINT *len)