summaryrefslogtreecommitdiffstats
path: root/lotuswordpro/source/filter/lwpfribframe.cxx
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2014-06-06 16:49:17 +0200
committerStephan Bergmann <sbergman@redhat.com>2014-06-06 16:49:44 +0200
commit37183595bb3b4d58682f90fd9f6713bedcb852a2 (patch)
tree1ac1fd9d69c0d09ea204173bd77721dc01bbddeb /lotuswordpro/source/filter/lwpfribframe.cxx
parentAvoid undefined mis-aligned memory access (diff)
downloadcore-37183595bb3b4d58682f90fd9f6713bedcb852a2.tar.gz
core-37183595bb3b4d58682f90fd9f6713bedcb852a2.zip
Fix memory leaks, by refcounting LwpObject
Change-Id: I1539597cd5bcabcbf0295d1acc320c503ad53604
Diffstat (limited to 'lotuswordpro/source/filter/lwpfribframe.cxx')
-rw-r--r--lotuswordpro/source/filter/lwpfribframe.cxx20
1 files changed, 10 insertions, 10 deletions
diff --git a/lotuswordpro/source/filter/lwpfribframe.cxx b/lotuswordpro/source/filter/lwpfribframe.cxx
index 6e489507f4a0..5d5c20c13ecb 100644
--- a/lotuswordpro/source/filter/lwpfribframe.cxx
+++ b/lotuswordpro/source/filter/lwpfribframe.cxx
@@ -80,7 +80,7 @@ void LwpFribFrame::Read(LwpObjectStream* pObjStrm, sal_uInt16 /*len*/)
* @descr: Get the layout object which the frib points to
*
*/
-LwpObject* LwpFribFrame::GetLayout()
+rtl::Reference<LwpObject> LwpFribFrame::GetLayout()
{
return m_objLayout.obj();
}
@@ -92,11 +92,11 @@ LwpObject* LwpFribFrame::GetLayout()
*/
void LwpFribFrame::RegisterStyle(LwpFoundry* pFoundry)
{
- LwpObject *pObject = m_objLayout.obj();
+ rtl::Reference<LwpObject> pObject = m_objLayout.obj();
- if (pObject && pObject->GetTag() == VO_DROPCAPLAYOUT)
+ if (pObject.is() && pObject->GetTag() == VO_DROPCAPLAYOUT)
{
- LwpDropcapLayout *pLayout = dynamic_cast<LwpDropcapLayout*>(pObject);
+ LwpDropcapLayout *pLayout = dynamic_cast<LwpDropcapLayout*>(pObject.get());
if (!pLayout)
return;
pLayout->RegisterStyle(pFoundry);
@@ -104,7 +104,7 @@ void LwpFribFrame::RegisterStyle(LwpFoundry* pFoundry)
else
{
//register frame style
- LwpPlacableLayout* pLayout = dynamic_cast<LwpPlacableLayout*>(pObject);
+ LwpPlacableLayout* pLayout = dynamic_cast<LwpPlacableLayout*>(pObject.get());
if (!pLayout)
return;
pLayout->SetFoundry(pFoundry);
@@ -132,12 +132,12 @@ void LwpFribFrame::RegisterStyle(LwpFoundry* pFoundry)
}
void LwpFribFrame::SetParaDropcap(LwpPara* pPara)
{
- LwpObject *pObject = m_objLayout.obj();
+ rtl::Reference<LwpObject> pObject = m_objLayout.obj();
- if (pObject && pObject->GetTag() == VO_DROPCAPLAYOUT)
+ if (pObject.is() && pObject->GetTag() == VO_DROPCAPLAYOUT)
{
pPara->SetParaDropcap(true);
- pPara->SetDropcapLayout(dynamic_cast<LwpDropcapLayout*>(pObject));
+ pPara->SetDropcapLayout(dynamic_cast<LwpDropcapLayout*>(pObject.get()));
}
else
pPara->SetParaDropcap(false);
@@ -150,7 +150,7 @@ void LwpFribFrame::SetParaDropcap(LwpPara* pPara)
void LwpFribFrame::XFConvert(XFContentContainer* pCont)
{
XFContentContainer* pXFContentContainer = pCont;
- LwpVirtualLayout* pLayout = dynamic_cast<LwpVirtualLayout*>(GetLayout());
+ LwpVirtualLayout* pLayout = dynamic_cast<LwpVirtualLayout*>(GetLayout().get());
if (!pLayout)
return;
sal_uInt8 nType = pLayout->GetRelativeType();
@@ -243,7 +243,7 @@ void LwpFribRubyFrame::XFConvert(XFContentContainer* /*pCont*/)
LwpRubyLayout* LwpFribRubyFrame::GetLayout()
{
- return dynamic_cast<LwpRubyLayout*>(m_objLayout.obj());
+ return dynamic_cast<LwpRubyLayout*>(m_objLayout.obj().get());
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */