summaryrefslogtreecommitdiff
path: root/sd/source/filter/xml/sdxmlwrp.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sd/source/filter/xml/sdxmlwrp.cxx')
-rw-r--r--sd/source/filter/xml/sdxmlwrp.cxx12
1 files changed, 6 insertions, 6 deletions
diff --git a/sd/source/filter/xml/sdxmlwrp.cxx b/sd/source/filter/xml/sdxmlwrp.cxx
index 43c3d0d7766d..ad36030f5e1c 100644
--- a/sd/source/filter/xml/sdxmlwrp.cxx
+++ b/sd/source/filter/xml/sdxmlwrp.cxx
@@ -28,6 +28,7 @@
#include <comphelper/propertysequence.hxx>
#include <o3tl/string_view.hxx>
#include <editeng/outlobj.hxx>
+#include <sax/xfastparser.hxx>
#include <sfx2/docfile.hxx>
#include <sfx2/docfilt.hxx>
#include <sfx2/sfxsids.hrc>
@@ -45,7 +46,6 @@
#include <svx/xmleohlp.hxx>
#include <com/sun/star/xml/sax/Parser.hpp>
#include <com/sun/star/xml/sax/XDocumentHandler.hpp>
-#include <com/sun/star/xml/sax/XFastParser.hpp>
#include <com/sun/star/document/XFilter.hpp>
#include <com/sun/star/document/XImporter.hpp>
#include <com/sun/star/document/XExporter.hpp>
@@ -198,11 +198,11 @@ ErrCode ReadThroughComponent(
SAL_WARN_IF(!xFilter.is(), "sd.filter", "Can't instantiate filter component: " << aFilterName);
if( !xFilter.is() )
return SD_XML_READERROR;
- Reference< xml::sax::XFastParser > xFastParser(xFilter, UNO_QUERY);
+ XFastParser* pFastParser = dynamic_cast<XFastParser*>(xFilter.get());
Reference< xml::sax::XDocumentHandler > xDocumentHandler;
- if (!xFastParser)
+ if (!pFastParser)
xDocumentHandler.set(xFilter, UNO_QUERY);
- if (!xFastParser && !xDocumentHandler)
+ if (!pFastParser && !xDocumentHandler)
{
SAL_WARN("sd", "service does not implement XFastParser or XDocumentHandler");
assert(false);
@@ -218,8 +218,8 @@ ErrCode ReadThroughComponent(
SAL_INFO( "sd.filter", "parsing stream" );
try
{
- if (xFastParser)
- xFastParser->parseStream( aParserInput );
+ if (pFastParser)
+ pFastParser->parseStream( aParserInput );
else
{
Reference< xml::sax::XParser > xParser = xml::sax::Parser::create(rxContext);