diff options
-rw-r--r-- | writerfilter/source/ooxml/OOXMLStreamImpl.cxx | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/writerfilter/source/ooxml/OOXMLStreamImpl.cxx b/writerfilter/source/ooxml/OOXMLStreamImpl.cxx index c66178f7d770..494011f3736f 100644 --- a/writerfilter/source/ooxml/OOXMLStreamImpl.cxx +++ b/writerfilter/source/ooxml/OOXMLStreamImpl.cxx @@ -455,9 +455,10 @@ OOXMLStream::Pointer_t OOXMLDocumentFactory::createStream (OOXMLStream::Pointer_t pStream, const OUString & rId) { - return OOXMLStream::Pointer_t - (new OOXMLStreamImpl(*dynamic_cast<OOXMLStreamImpl *>(pStream.get()), - rId)); + OOXMLStream::Pointer_t pRet; + if (OOXMLStreamImpl* pImpl = dynamic_cast<OOXMLStreamImpl *>(pStream.get())) + pRet.reset(new OOXMLStreamImpl(*pImpl, rId)); + return pRet; } }} |