rpms/openoffice.org/devel workspace.aw073.patch, 1.2, 1.3 openoffice.org.spec, 1.2010, 1.2011
Caolan McNamara
caolanm at fedoraproject.org
Wed Sep 23 15:09:32 UTC 2009
Author: caolanm
Update of /cvs/pkgs/rpms/openoffice.org/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv16850/devel
Modified Files:
openoffice.org.spec
Added Files:
workspace.aw073.patch
Log Message:
Resolves: rhbz#522839 crash on exit after loading .doc
workspace.aw073.patch:
editobj.cxx | 36 +++++++++++++++++++++++++++++++++---
1 file changed, 33 insertions(+), 3 deletions(-)
Index: workspace.aw073.patch
===================================================================
RCS file: workspace.aw073.patch
diff -N workspace.aw073.patch
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ workspace.aw073.patch 23 Sep 2009 15:09:31 -0000 1.3
@@ -0,0 +1,78 @@
+Index: source/editeng/editobj.cxx
+===================================================================
+--- svx.orig/source/editeng/editobj.cxx (.../tags/DEV300_m52/svx) (revision 276405)
++++ svx/source/editeng/editobj.cxx (.../cws/aw073/svx) (revision 276405)
+@@ -599,6 +617,23 @@
+ }
+ }
+
++EditEngineItemPool* getEditEngineItemPool(SfxItemPool* pPool)
++{
++ EditEngineItemPool* pRetval = dynamic_cast< EditEngineItemPool* >(pPool);
++
++ while(!pRetval && pPool && pPool->GetSecondaryPool())
++ {
++ pPool = pPool->GetSecondaryPool();
++
++ if(pPool)
++ {
++ pRetval = dynamic_cast< EditEngineItemPool* >(pPool);
++ }
++ }
++
++ return pRetval;
++}
++
+ BinTextObject::BinTextObject( SfxItemPool* pP ) :
+ EditTextObject( EE_FORMAT_BIN ),
+ SfxItemPoolUser()
+@@ -608,9 +643,17 @@
+ nUserType = 0;
+ nObjSettings = 0;
+ pPortionInfo = 0;
+- if ( pP )
++
++ // #i101239# ensure target is a EditEngineItemPool, else
++ // fallback to pool ownership. This is needed to ensure that at
++ // pool destruction time of an alien pool, the pool is still alive.
++ // When registering would happen at an alien pool which just uses an
++ // EditEngineItemPool as some sub-pool, that pool could already
++ // be decoupled and deleted whcih would lead to crashes.
++ pPool = getEditEngineItemPool(pP);
++
++ if ( pPool )
+ {
+- pPool = pP;
+ bOwnerOfPool = FALSE;
+ }
+ else
+@@ -621,6 +664,7 @@
+
+ if(!bOwnerOfPool && pPool)
+ {
++ // it is sure now that the pool is an EditEngineItemPool
+ pPool->AddSfxItemPoolUser(*this);
+ }
+
+@@ -641,9 +685,12 @@
+ nScriptType = r.nScriptType;
+ pPortionInfo = NULL; // PortionInfo nicht kopieren
+ bStoreUnicodeStrings = FALSE;
++
+ if ( !r.bOwnerOfPool )
+ {
+- // Dann den Pool mitverwenden
++ // reuse alien pool; this must be a EditEngineItemPool
++ // since there is no other way to construct a BinTextObject
++ // than it's regular constructor where that is ensured
+ pPool = r.pPool;
+ bOwnerOfPool = FALSE;
+ }
+@@ -656,6 +703,7 @@
+
+ if(!bOwnerOfPool && pPool)
+ {
++ // it is sure now that the pool is an EditEngineItemPool
+ pPool->AddSfxItemPoolUser(*this);
+ }
+
Index: openoffice.org.spec
===================================================================
RCS file: /cvs/pkgs/rpms/openoffice.org/devel/openoffice.org.spec,v
retrieving revision 1.2010
retrieving revision 1.2011
diff -u -p -r1.2010 -r1.2011
--- openoffice.org.spec 15 Sep 2009 20:03:32 -0000 1.2010
+++ openoffice.org.spec 23 Sep 2009 15:09:30 -0000 1.2011
@@ -160,6 +160,7 @@ Patch83: openoffice.org-3.1.1.ooo104157.
Patch84: workspace.dr69.patch
Patch85: openoffice.org-3.1.1.ooo64671.canvas.add-support-for-font-pitch.patch
Patch86: openoffice.org-3.1.1.oooXXXXXX.sal.justcoredump.patch
+Patch87: workspace.aw073.patch
%define python_py_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(0)")
%define instdir %{_libdir}
@@ -1706,6 +1707,7 @@ cat %{PATCH11} >> svtools/source/dialogs
%patch84 -p0 -b .workspace.dr69.patch
%patch85 -p0 -b .ooo64671.canvas.add-support-for-font-pitch.patch
%patch86 -p1 -b .oooXXXXXX.sal.justcoredump.patch
+%patch87 -p0 -b .workspace.aw073.patch
%build
echo build start time is `date`, diskspace: `df -h . | tail -n 1`
@@ -4239,6 +4241,9 @@ fi
unopkg list --shared > /dev/null 2>&1 || :
%changelog
+* Wed Sep 23 2009 Caolán McNamara <caolanm at redhat.com> - 1:3.1.1-19.9
+- Resolves: rhbz#522839 crash on exit after loading .doc
+
* Tue Sep 15 2009 Caolán McNamara <caolanm at redhat.com> - 1:3.1.1-19.8
- disable NumberFormatRecognition from default writer configuration (caolanm)
- Resolves: rhbz#522056 - wrong match of fonts (non-)proportional (dtardon)
More information about the fedora-extras-commits
mailing list