summaryrefslogtreecommitdiff
path: root/xmloff
diff options
context:
space:
mode:
authorNoel Grandin <noelgrandin@gmail.com>2020-12-04 20:26:02 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2020-12-05 08:16:52 +0100
commit3b8ce394593fa4acfb1336b2b4cc3f32f67f4932 (patch)
tree9c9dd33eb0a29a7557c9f5a8bdbb4d8f772d0f10 /xmloff
parent9f8b7280903f2a0b0202bc7fbc4fd807cc78045e (diff)
fastparser in SdXMLTableShapeContext
Change-Id: Ia27408ff3f640de942f42718e2ee497350f48785 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107237 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'xmloff')
-rw-r--r--xmloff/source/draw/ximpshap.cxx11
-rw-r--r--xmloff/source/draw/ximpshap.hxx3
2 files changed, 8 insertions, 6 deletions
diff --git a/xmloff/source/draw/ximpshap.cxx b/xmloff/source/draw/ximpshap.cxx
index 476c3ec006e7..520bc682e6bf 100644
--- a/xmloff/source/draw/ximpshap.cxx
+++ b/xmloff/source/draw/ximpshap.cxx
@@ -4018,12 +4018,13 @@ void SdXMLTableShapeContext::processAttribute( sal_uInt16 nPrefix, const OUStrin
SdXMLShapeContext::processAttribute( nPrefix, rLocalName, rValue );
}
-SvXMLImportContextRef SdXMLTableShapeContext::CreateChildContext( sal_uInt16 nPrefix, const OUString& rLocalName, const uno::Reference<xml::sax::XAttributeList>& xAttrList )
+css::uno::Reference< css::xml::sax::XFastContextHandler > SdXMLTableShapeContext::createFastChildContext(
+ sal_Int32 nElement,
+ const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList )
{
- if( mxTableImportContext.is() && (nPrefix == XML_NAMESPACE_TABLE) )
- return mxTableImportContext->CreateChildContext(nPrefix, rLocalName, xAttrList);
- else
- return SdXMLShapeContext::CreateChildContext(nPrefix, rLocalName, xAttrList);
+ if( mxTableImportContext.is() && IsTokenInNamespace(nElement, XML_NAMESPACE_TABLE) )
+ return mxTableImportContext->createFastChildContextFallback(nElement, xAttrList);
+ return SdXMLShapeContext::createFastChildContext(nElement, xAttrList);
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/xmloff/source/draw/ximpshap.hxx b/xmloff/source/draw/ximpshap.hxx
index 31a15323e625..49d70c5b3c37 100644
--- a/xmloff/source/draw/ximpshap.hxx
+++ b/xmloff/source/draw/ximpshap.hxx
@@ -625,7 +625,8 @@ public:
const css::uno::Reference< css::xml::sax::XFastAttributeList >& xAttrList ) override;
virtual void SAL_CALL endFastElement(sal_Int32 nElement) override;
- virtual SvXMLImportContextRef CreateChildContext( sal_uInt16 nPrefix, const OUString& rLocalName, const css::uno::Reference< css::xml::sax::XAttributeList>& xAttrList ) override;
+ virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext(
+ sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList >& AttrList ) override;
// this is called from the parent group for each unparsed attribute in the attribute list
virtual void processAttribute( sal_uInt16 nPrefix, const OUString& rLocalName, const OUString& rValue ) override;