[Libreoffice-commits] .: 2 commits - sc/source
Kohei Yoshida
kohei at kemper.freedesktop.org
Thu Apr 26 18:13:44 PDT 2012
sc/source/filter/excel/xlroot.cxx | 6 +++---
sc/source/ui/unoobj/textuno.cxx | 3 ---
2 files changed, 3 insertions(+), 6 deletions(-)
New commits:
commit ed89b3799f2b0131f2150b7762044afd4ffd8fd2
Author: Kohei Yoshida <kohei.yoshida at gmail.com>
Date: Thu Apr 26 21:09:52 2012 -0400
Evil manual reference counter manipulations. Let's murder them.
Incidentally, this fixes the dbgutil error problem.
The old code was passing a copy of the ScHeaderFooterContentObj object
to the ScHeaderFooterTextData object, which was why the counter was
incremented on copy (though they should still have used a wrapper instead
of manual reference counting). My new code passes a reference, which
removes the copying, but those pesky acquire() and release() calls
were still there. This caused the ScHeaderFooterContentObj object to
never get deleted, which in turn caused the dbgutil refcounting check
of SvxUnoTextRangeBase object to fail.
Change-Id: I4e1780b32b21098a121ec7a43bb3eb842a419584
diff --git a/sc/source/ui/unoobj/textuno.cxx b/sc/source/ui/unoobj/textuno.cxx
index fbae7fd..b6fd429 100644
--- a/sc/source/ui/unoobj/textuno.cxx
+++ b/sc/source/ui/unoobj/textuno.cxx
@@ -204,7 +204,6 @@ ScHeaderFooterTextData::ScHeaderFooterTextData(
pForwarder( NULL ),
bDataValid(false)
{
- rContentObj.acquire(); // must not go away
}
ScHeaderFooterTextData::~ScHeaderFooterTextData()
@@ -213,8 +212,6 @@ ScHeaderFooterTextData::~ScHeaderFooterTextData()
delete pForwarder;
delete pEditEngine;
-
- rContentObj.release();
}
SvxTextForwarder* ScHeaderFooterTextData::GetTextForwarder()
commit 861acd5b73956425da788c78fb1ed5c283a1f6a0
Author: Kohei Yoshida <kohei.yoshida at gmail.com>
Date: Thu Apr 26 19:12:07 2012 -0400
Get it to build in non-dbgutil build with debug=true.
diff --git a/sc/source/filter/excel/xlroot.cxx b/sc/source/filter/excel/xlroot.cxx
index 6f088f4..a3168c6 100644
--- a/sc/source/filter/excel/xlroot.cxx
+++ b/sc/source/filter/excel/xlroot.cxx
@@ -177,7 +177,7 @@ XclRootData::~XclRootData()
XclRoot::XclRoot( XclRootData& rRootData ) :
mrData( rRootData )
{
-#if OSL_DEBUG_LEVEL > 0
+#if defined(DBG_UTIL) && OSL_DEBUG_LEVEL > 0
++mrData.mnObjCnt;
#endif
@@ -189,14 +189,14 @@ XclRoot::XclRoot( XclRootData& rRootData ) :
XclRoot::XclRoot( const XclRoot& rRoot ) :
mrData( rRoot.mrData )
{
-#if OSL_DEBUG_LEVEL > 0
+#if defined(DBG_UTIL) && OSL_DEBUG_LEVEL > 0
++mrData.mnObjCnt;
#endif
}
XclRoot::~XclRoot()
{
-#if OSL_DEBUG_LEVEL > 0
+#if defined(DBG_UTIL) && OSL_DEBUG_LEVEL > 0
--mrData.mnObjCnt;
#endif
}
More information about the Libreoffice-commits
mailing list