rpms/openoffice.org/devel workspace.impress180.patch, NONE, 1.1 workspace.vcl107.patch, NONE, 1.1 openoffice.org.spec, 1.2052, 1.2053 openoffice.org-3.1.1.ooo106130.svx.removedeletedshapes.patch, 1.1, NONE openoffice.org-3.2.0.ooo90599.accelsequence.crash.patch, 1.1, NONE

Caolan McNamara caolanm at fedoraproject.org
Thu Oct 29 17:53:40 UTC 2009


Author: caolanm

Update of /cvs/pkgs/rpms/openoffice.org/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv4311

Modified Files:
	openoffice.org.spec 
Added Files:
	workspace.impress180.patch workspace.vcl107.patch 
Removed Files:
	openoffice.org-3.1.1.ooo106130.svx.removedeletedshapes.patch 
	openoffice.org-3.2.0.ooo90599.accelsequence.crash.patch 
Log Message:
sync with accepted upstream workspaces

workspace.impress180.patch:
 inc/svx/svdfppt.hxx          |    2 +-
 source/msfilter/msdffimp.cxx |   28 ++++++++++++++++++----------
 source/svdraw/svdfppt.cxx    |   13 ++++++++++++-
 3 files changed, 31 insertions(+), 12 deletions(-)

--- NEW FILE workspace.impress180.patch ---
diff -ru svx.orig/inc/svx/svdfppt.hxx svx/inc/svx/svdfppt.hxx
--- svx.orig/inc/svx/svdfppt.hxx	2009-10-21 09:45:21.000000000 +0100
+++ svx/inc/svx/svdfppt.hxx	2009-10-21 09:45:50.000000000 +0100
@@ -610,7 +610,7 @@
 										UINT32& nMappedFontId, Font& rFont, char nDefault ) const;
     const PptDocumentAtom&				GetDocumentAtom() const { return aDocAtom; }
     virtual const PptSlideLayoutAtom*	GetSlideLayoutAtom() const;
-	SdrObject*	CreateTable( SdrObject* pGroupObject, sal_uInt32* pTableArry, SvxMSDffSolverContainer* ) const;
+	SdrObject*	CreateTable( SdrObject* pGroupObject, sal_uInt32* pTableArry, SvxMSDffSolverContainer* );
 };
 
 ////////////////////////////////////////////////////////////////////////////////////////////////////
diff -ru svx.orig/source/msfilter/msdffimp.cxx svx/source/msfilter/msdffimp.cxx
--- svx.orig/source/msfilter/msdffimp.cxx	2009-10-21 09:45:12.000000000 +0100
+++ svx/source/msfilter/msdffimp.cxx	2009-10-21 09:52:13.000000000 +0100
@@ -7957,25 +7957,31 @@
         delete pWrapPolygon;
 }
 
-/* vi:set tabstop=4 shiftwidth=4 expandtab: */
-
 void SvxMSDffManager::insertShapeId( sal_Int32 nShapeId, SdrObject* pShape )
 {
 	maShapeIdContainer[nShapeId] = pShape;
 }
 
-void SvxMSDffManager::removeShapeId( SdrObject* pShape )
+namespace
 {
-	SvxMSDffShapeIdContainer::iterator aIter( maShapeIdContainer.begin() );
-	const SvxMSDffShapeIdContainer::iterator aEnd( maShapeIdContainer.end() );
-	while( aIter != aEnd )
+	class IsShape : public std::unary_function<SvxMSDffShapeIdContainer::value_type, bool>
 	{
-		if( (*aIter).second == pShape )
+		const SdrObject *mpShape;
+	public:
+		IsShape(const SdrObject *pShape) : mpShape(pShape) {}
+		bool operator()(const SvxMSDffShapeIdContainer::value_type& rVal)
 		{
-			maShapeIdContainer.erase( aIter );
-			break;
+			return rVal.second == mpShape;
 		}
-	}
+	};
+}
+
+void SvxMSDffManager::removeShapeId( SdrObject* pShape )
+{
+        const SvxMSDffShapeIdContainer::iterator aEnd( maShapeIdContainer.end() );
+	SvxMSDffShapeIdContainer::iterator aIter = std::find_if(maShapeIdContainer.begin(), aEnd, IsShape(pShape));
+	if (aIter != aEnd)
+		maShapeIdContainer.erase( aIter );
 }
 
 SdrObject* SvxMSDffManager::getShapeForId( sal_Int32 nShapeId )
@@ -7983,3 +7989,5 @@
 	SvxMSDffShapeIdContainer::iterator aIter( maShapeIdContainer.find(nShapeId) );
 	return aIter != maShapeIdContainer.end() ? (*aIter).second : 0;
 }
+
+/* vi:set tabstop=4 shiftwidth=4 expandtab: */
diff -ru svx.orig/source/svdraw/svdfppt.cxx svx/source/svdraw/svdfppt.cxx
--- svx.orig/source/svdraw/svdfppt.cxx	2009-10-21 09:45:12.000000000 +0100
+++ svx/source/svdraw/svdfppt.cxx	2009-10-21 09:45:37.000000000 +0100
@@ -7492,7 +7492,7 @@
 	}
 }
 
-SdrObject* SdrPowerPointImport::CreateTable( SdrObject* pGroup, sal_uInt32* pTableArry, SvxMSDffSolverContainer* pSolverContainer ) const
+SdrObject* SdrPowerPointImport::CreateTable( SdrObject* pGroup, sal_uInt32* pTableArry, SvxMSDffSolverContainer* pSolverContainer )
 {
 	SdrObject* pRet = pGroup;
 	sal_uInt32 nRows = pTableArry[ 1 ];
@@ -7585,6 +7585,17 @@
 				pTable->uno_unlock();
 				pTable->SetSnapRect( pGroup->GetSnapRect() );
 				pRet = pTable;
+
+
+				//Remove Objects from shape map
+				SdrObjListIter aIter( *pGroup, IM_DEEPWITHGROUPS );
+				while( aIter.IsMore() )
+				{
+					SdrObject* pPartObj = aIter.Next();
+					removeShapeId( pPartObj );
+				}
+
+
 				SdrObject::Free( pGroup );
 			}
 			catch( Exception& )

workspace.vcl107.patch:
 accmgr.cxx |   17 +++++++++++++++++
 1 file changed, 17 insertions(+)

--- NEW FILE workspace.vcl107.patch ---
diff -r 170d9f615c3e vcl/source/window/accmgr.cxx
--- a/vcl/source/window/accmgr.cxx	Wed Oct 28 10:10:41 2009 +0000
+++ b/vcl/source/window/accmgr.cxx	Thu Oct 29 12:30:32 2009 +0000
@@ -83,6 +83,23 @@
     if ( !mpAccelList )
         return;
 
+    //e.g. #i90599#. Someone starts typing a sequence in a dialog, but doesn't
+    //end it, and then closes the dialog, deleting the accelerators. So if
+    //we're removing an accelerator that a sub-accelerator which is in the
+    //sequence list, throw away the entire sequence 
+    if ( mpSequenceList )
+    {
+        for (USHORT i = 0; i < pAccel->GetItemCount(); ++i)
+        {
+            Accelerator* pSubAccel = pAccel->GetAccel(pAccel->GetItemId(i));
+            if ( mpSequenceList->GetPos( pSubAccel ) != LIST_ENTRY_NOTFOUND )
+            {
+                EndSequence( true );
+                break;
+            }
+        }
+    }
+
     // Raus damit
     mpAccelList->Remove( pAccel );
 }


Index: openoffice.org.spec
===================================================================
RCS file: /cvs/pkgs/rpms/openoffice.org/devel/openoffice.org.spec,v
retrieving revision 1.2052
retrieving revision 1.2053
diff -u -p -r1.2052 -r1.2053
--- openoffice.org.spec	29 Oct 2009 12:38:14 -0000	1.2052
+++ openoffice.org.spec	29 Oct 2009 17:53:40 -0000	1.2053
@@ -119,9 +119,9 @@ Patch45: openoffice.org-3.2.0.ooo105988.
 Patch46: openoffice.org-3.2.0.rhbz521460.svx.revert-paper-sizes-reordering.patch
 Patch47: openoffice.org-3.2.0.ooo106032.linguistic.defaulttoplain.patch
 Patch48: workspace.impress178.patch
-Patch49: openoffice.org-3.1.1.ooo106130.svx.removedeletedshapes.patch
+Patch49: workspace.impress180.patch
 Patch50: workspace.gsminhibit.patch
-Patch51: openoffice.org-3.2.0.ooo90599.accelsequence.crash.patch
+Patch51: workspace.vcl107.patch
 
 %define python_py_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(0)")
 %define instdir %{_libdir}
@@ -1630,9 +1630,9 @@ cat %{PATCH10} >> svtools/source/dialogs
 %patch46 -p1 -b .rhbz521460.svx.revert-paper-sizes-reordering.patch
 %patch47 -p0 -b .ooo106032.linguistic.defaulttoplain.patch
 %patch48 -p0 -b .workspace.impress178.patch
-%patch49 -p0 -b .ooo106130.svx.removedeletedshapes.patch
+%patch49 -p0 -b .workspace.impress180.patch
 %patch50 -p1 -b .workspace.gsminhibit.patch
-%patch51 -p1 -b .ooo90599.accelsequence.crash.patch
+%patch51 -p1 -b .workspace.vcl107.patch
 
 %build
 echo build start time is `date`, diskspace: `df -h . | tail -n 1`


--- openoffice.org-3.1.1.ooo106130.svx.removedeletedshapes.patch DELETED ---


--- openoffice.org-3.2.0.ooo90599.accelsequence.crash.patch DELETED ---




More information about the fedora-extras-commits mailing list