summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@frugalware.org>2011-08-10 17:02:47 +0200
committerMiklos Vajna <vmiklos@frugalware.org>2011-08-10 17:07:52 +0200
commit3721e245b424ea1645174fb9321c0216204ad9b7 (patch)
tree0ed9733b76495f723cea2abd37004b053f9c733b /writerfilter
parent41430f10267643eefb7163682b30b12c4ff24911 (diff)
RTFDocumentImpl: avoid raw pointers
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.cxx16
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.hxx8
2 files changed, 8 insertions, 16 deletions
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 1210b37c4012..1844726611b1 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -273,7 +273,6 @@ RTFDocumentImpl::RTFDocumentImpl(uno::Reference<uno::XComponentContext> const& x
m_aObjectSprms(),
m_aObjectAttributes(),
m_bObject(false),
- m_pObjectData(0),
m_aFontTableEntries(),
m_nCurrentFontIndex(0),
m_aStyleTableEntries(),
@@ -291,14 +290,12 @@ RTFDocumentImpl::RTFDocumentImpl(uno::Reference<uno::XComponentContext> const& x
m_pGraphicHelper = new oox::GraphicHelper(m_xContext, xFrame, m_xStorage);
- m_pTokenizer = new RTFTokenizer(*this, m_pInStream);
- m_pSdrImport = new RTFSdrImport(*this, m_xDstDoc);
+ m_pTokenizer.reset(new RTFTokenizer(*this, m_pInStream));
+ m_pSdrImport.reset(new RTFSdrImport(*this, m_xDstDoc));
}
RTFDocumentImpl::~RTFDocumentImpl()
{
- delete m_pTokenizer;
- delete m_pSdrImport;
}
SvStream& RTFDocumentImpl::Strm()
@@ -2646,7 +2643,7 @@ int RTFDocumentImpl::popState()
}
else if (m_aStates.top().nDestinationState == DESTINATION_OBJDATA)
{
- m_pObjectData = new SvMemoryStream();
+ m_pObjectData.reset(new SvMemoryStream());
int b = 0, count = 2;
// Feed the destination text to a stream.
@@ -2689,7 +2686,7 @@ int RTFDocumentImpl::popState()
*m_pObjectData >> nData; // NativeDataSize
}
- uno::Reference<io::XInputStream> xInputStream(new utl::OInputStreamWrapper(m_pObjectData));
+ uno::Reference<io::XInputStream> xInputStream(new utl::OInputStreamWrapper(m_pObjectData.get()));
RTFValue::Pointer_t pStreamValue(new RTFValue(xInputStream));
RTFSprms aOLEAttributes;
@@ -2714,11 +2711,6 @@ int RTFDocumentImpl::popState()
Mapper().endShape();
m_aObjectAttributes->clear();
m_aObjectSprms->clear();
- if (m_pObjectData)
- {
- delete m_pObjectData;
- m_pObjectData = 0;
- }
m_bObject = false;
}
else if (m_aStates.top().nDestinationState == DESTINATION_ANNOTATIONDATE)
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.hxx b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
index f5506cd147d1..da4831612a15 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.hxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
@@ -321,8 +321,8 @@ namespace writerfilter {
com::sun::star::uno::Reference<com::sun::star::document::XDocumentProperties> m_xDocumentProperties;
SvStream* m_pInStream;
Stream* m_pMapperStream;
- RTFSdrImport* m_pSdrImport;
- RTFTokenizer* m_pTokenizer;
+ boost::shared_ptr<RTFSdrImport> m_pSdrImport;
+ boost::shared_ptr<RTFTokenizer> m_pTokenizer;
/// Same as m_aStates.size(), except that this can be negative for invalid input.
int m_nGroup;
std::stack<RTFParserState> m_aStates;
@@ -379,8 +379,8 @@ namespace writerfilter {
RTFSprms m_aObjectAttributes;
/// If we are in an object group.
bool m_bObject;
- /// Contents of the objdata group, stored here so we can delete it when we leave the object group.
- SvStream* m_pObjectData;
+ /// Contents of the objdata group.
+ boost::shared_ptr<SvStream> m_pObjectData;
RTFReferenceTable::Entries_t m_aFontTableEntries;
int m_nCurrentFontIndex;