ooo-build r14380 - in trunk: . patches/dev300



Author: thorstenb
Date: Tue Oct 21 21:32:30 2008
New Revision: 14380
URL: http://svn.gnome.org/viewvc/ooo-build?rev=14380&view=rev

Log:
    * patches/dev300/apply:
    * patches/dev300/cws-impress163-sd.diff:
    * patches/dev300/cws-impress163-svx.diff:
    * patches/dev300/cws-impress163-slideshow.diff: Backport from
    3.0.1, fixes i#92026 (Unhandled exception when printing from cmd
    line), i#92551 (Impress cannot find some text in a table), i#94705
    (presentation looses background), i#95055
    (Impress loses data from Table rows)



Added:
   trunk/patches/dev300/cws-impress163-sd.diff
   trunk/patches/dev300/cws-impress163-slideshow.diff
   trunk/patches/dev300/cws-impress163-svx.diff
Modified:
   trunk/ChangeLog
   trunk/patches/dev300/apply

Modified: trunk/patches/dev300/apply
==============================================================================
--- trunk/patches/dev300/apply	(original)
+++ trunk/patches/dev300/apply	Tue Oct 21 21:32:30 2008
@@ -2721,7 +2721,9 @@
 instset-macos-langpacks.diff, i#64937, cloph
 sal-disable-backtrace.diff, thorsten
 valgrind-fix-warnings.diff, i#95197, thorsten
-
+cws-impress163-sd.diff, thorsten
+cws-impress163-svx.diff, thorsten
+cws-impress163-slideshow.diff, thorsten
 
 [ MinGW ]
 SectionOwner => jholesov

Added: trunk/patches/dev300/cws-impress163-sd.diff
==============================================================================
--- (empty file)
+++ trunk/patches/dev300/cws-impress163-sd.diff	Tue Oct 21 21:32:30 2008
@@ -0,0 +1,125 @@
+Index: source/core/stlpool.cxx
+===================================================================
+RCS file: /cvs/graphics/sd/source/core/stlpool.cxx,v
+retrieving revision 1.41
+retrieving revision 1.41.68.1
+diff -u -p -r1.41 -r1.41.68.1
+--- sd/source/core/stlpool.cxx	7 Jul 2008 13:32:22 -0000	1.41
++++ sd/source/core/stlpool.cxx	20 Oct 2008 14:56:52 -0000	1.41.68.1
+@@ -674,6 +674,8 @@ void SdStyleSheetPool::CopyTableStyles(S
+ 
+ void SdStyleSheetPool::CopySheets(SdStyleSheetPool& rSourcePool, SfxStyleFamily eFamily )
+ {
++    String aHelpFile;
++
+ 	sal_uInt32 nCount = rSourcePool.aStyles.size();
+ 
+ 	std::vector< std::pair< rtl::Reference< SfxStyleSheetBase >, String > > aNewStyles;
+@@ -696,6 +698,7 @@ void SdStyleSheetPool::CopySheets(SdStyl
+                 if( aParent.Len() )
+ 					aNewStyles.push_back( std::pair< rtl::Reference< SfxStyleSheetBase >, String >( xNewSheet, aParent ) );
+ 
++                xNewSheet->SetHelpId( aHelpFile, xSheet->GetHelpId( aHelpFile ) );
+ 				xNewSheet->GetItemSet().Put( xSheet->GetItemSet() );
+ 			}
+ 		}
+@@ -732,6 +735,7 @@ void SdStyleSheetPool::CopyLayoutSheets(
+ 
+ 	List* pNameList = CreateLayoutSheetNames(rLayoutName);
+ 
++    String sEmpty;
+ 	String* pName = (String*)pNameList->First();
+ 	while (pName)
+ 	{
+@@ -744,6 +748,7 @@ void SdStyleSheetPool::CopyLayoutSheets(
+ 			{
+ 				// falls einer mit Methusalem-Doks. ankommt
+ 				SfxStyleSheetBase& rNewSheet = Make(*pName, SD_STYLE_FAMILY_MASTERPAGE);
++                rNewSheet.SetHelpId( sEmpty, pSourceSheet->GetHelpId( sEmpty ) );
+ 				rNewSheet.GetItemSet().Put(pSourceSheet->GetItemSet());
+ 				rCreatedSheets.push_back( SdStyleSheetRef( static_cast< SdStyleSheet* >( &rNewSheet ) ) );
+ 			}
+Index: source/ui/framework/configuration/ConfigurationController.cxx
+===================================================================
+RCS file: /cvs/graphics/sd/source/ui/framework/configuration/ConfigurationController.cxx,v
+retrieving revision 1.7
+retrieving revision 1.7.68.1
+diff -u -p -r1.7 -r1.7.68.1
+--- sd/source/ui/framework/configuration/ConfigurationController.cxx	11 Jul 2008 13:35:17 -0000	1.7
++++ sd/source/ui/framework/configuration/ConfigurationController.cxx	21 Oct 2008 15:24:49 -0000	1.7.68.1
+@@ -305,7 +305,11 @@ void SAL_CALL ConfigurationController::u
+     throw (RuntimeException)
+ {
+     ::osl::MutexGuard aGuard (maMutex);
+-    ThrowIfDisposed();
++
++    // Allow unlocking while the ConfigurationController is being disposed
++    // (but not when that is done and the controller is disposed.)
++    if (rBHelper.bDisposed)
++        ThrowIfDisposed();
+ 
+     OSL_ASSERT(mpImplementation->mnLockCount>0);
+     --mpImplementation->mnLockCount;
+Index: source/ui/func/fuprlout.cxx
+===================================================================
+RCS file: /cvs/graphics/sd/source/ui/func/fuprlout.cxx,v
+retrieving revision 1.17
+retrieving revision 1.17.130.1
+diff -u -p -r1.17 -r1.17.130.1
+--- sd/source/ui/func/fuprlout.cxx	10 Apr 2008 20:24:19 -0000	1.17
++++ sd/source/ui/func/fuprlout.cxx	20 Oct 2008 14:57:41 -0000	1.17.130.1
+@@ -287,32 +287,4 @@ void FuPresentationLayout::DoExecute( Sf
+ 	}
+ }
+ 
+-/*************************************************************************
+-|*
+-|* Layoutvorlage von einem StyleSheetPool in einen anderen uebertragen
+-|*
+-\************************************************************************/
+-
+-void FuPresentationLayout::TransferLayoutTemplate(String aFromName,
+-												  String aToName,
+-												  SfxStyleSheetBasePool* pFrom,
+-												  SfxStyleSheetBasePool* pTo)
+-{
+-	SfxStyleSheetBase* pHis = pFrom->Find(aFromName,SD_STYLE_FAMILY_MASTERPAGE);
+-	SfxStyleSheetBase* pMy	= pTo->Find(aToName, SD_STYLE_FAMILY_MASTERPAGE);
+-
+-	DBG_ASSERT(pHis, "neue Layoutvorlage nicht gefunden");
+-
+-	// gibt's noch nicht: neu anlegen
+-	if (!pMy)
+-	{
+-		pMy = &(pTo->Make(aToName, SD_STYLE_FAMILY_MASTERPAGE));
+-	}
+-
+-	// Inhalte neu setzen
+-	if (pHis)
+-		pMy->GetItemSet().Set(pHis->GetItemSet());
+-}
+-
+-
+ } // end of namespace sd
+Index: source/ui/inc/fuprlout.hxx
+===================================================================
+RCS file: /cvs/graphics/sd/source/ui/inc/fuprlout.hxx,v
+retrieving revision 1.5
+retrieving revision 1.5.130.1
+diff -u -p -r1.5 -r1.5.130.1
+--- sd/source/ui/inc/fuprlout.hxx	10 Apr 2008 21:17:17 -0000	1.5
++++ sd/source/ui/inc/fuprlout.hxx	20 Oct 2008 14:57:31 -0000	1.5.130.1
+@@ -59,10 +59,6 @@ private:
+         ::sd::View* pView,
+         SdDrawDocument* pDoc, 
+         SfxRequest& rReq);
+-
+-	void TransferLayoutTemplate(String aFromName, String aToName,
+-								SfxStyleSheetBasePool* pFrom,
+-								SfxStyleSheetBasePool* pTo);
+ };
+ 
+ } // end of namespace sd
+? .gitignore
+? unxlngx6
+? source/table/localize.sdf

Added: trunk/patches/dev300/cws-impress163-slideshow.diff
==============================================================================
--- (empty file)
+++ trunk/patches/dev300/cws-impress163-slideshow.diff	Tue Oct 21 21:32:30 2008
@@ -0,0 +1,26 @@
+Index: source/engine/slideview.cxx
+===================================================================
+RCS file: /cvs/graphics/slideshow/source/engine/slideview.cxx,v
+retrieving revision 1.8
+retrieving revision 1.8.8.1
+diff -u -p -r1.8 -r1.8.8.1
+--- slideshow/source/engine/slideview.cxx	24 Jun 2008 12:03:17 -0000	1.8
++++ slideshow/source/engine/slideview.cxx	21 Oct 2008 12:52:38 -0000	1.8.8.1
+@@ -554,8 +554,15 @@ private:
+                                                   maTransformation );
+ 
+         basegfx::B2DHomMatrix aMatrix( maTransformation );
+-        aMatrix.translate( -basegfx::fround(aTmpRect.getMinX()),
+-                           -basegfx::fround(aTmpRect.getMinY()) );
++
++        // Add translation according to the origin of aTmpRect.  Ignore the
++        // translation when aTmpRect was not properly initialized.
++        if (aTmpRect.getMinX() <= aTmpRect.getMaxX() 
++            && aTmpRect.getMinY() <= aTmpRect.getMaxY())
++        {
++            aMatrix.translate( -basegfx::fround(aTmpRect.getMinX()),
++                               -basegfx::fround(aTmpRect.getMinY()) );
++        }
+ 
+         return aMatrix;
+     }

Added: trunk/patches/dev300/cws-impress163-svx.diff
==============================================================================
--- (empty file)
+++ trunk/patches/dev300/cws-impress163-svx.diff	Tue Oct 21 21:32:30 2008
@@ -0,0 +1,311 @@
+Index: source/table/cell.cxx
+===================================================================
+RCS file: /cvs/graphics/svx/source/table/cell.cxx,v
+retrieving revision 1.4
+retrieving revision 1.4.80.1
+diff -u -p -r1.4 -r1.4.80.1
+--- svx/source/table/cell.cxx	6 Jun 2008 12:35:07 -0000	1.4
++++ svx/source/table/cell.cxx	21 Oct 2008 13:46:45 -0000	1.4.80.1
+@@ -682,6 +682,7 @@ SdrTextHorzAdjust Cell::GetTextHorizonta
+ void Cell::SetOutlinerParaObject( OutlinerParaObject* pTextObject )
+ {
+ 	SdrText::SetOutlinerParaObject( pTextObject );
++    maSelection.nStartPara = 0xffff;
+ }
+ 
+ // -----------------------------------------------------------------------------
+@@ -1686,6 +1687,7 @@ Reference< XTextRange > SAL_CALL Cell::g
+ 
+ OUString SAL_CALL Cell::getString(  ) throw (RuntimeException)
+ {
++    maSelection.nStartPara = 0xffff;
+ 	return SvxUnoTextBase::getString();
+ }
+ 
+Index: source/table/tablecolumn.hxx
+===================================================================
+RCS file: /cvs/graphics/svx/source/table/tablecolumn.hxx,v
+retrieving revision 1.3
+retrieving revision 1.3.264.1
+diff -u -p -r1.3 -r1.3.264.1
+--- svx/source/table/tablecolumn.hxx	11 Apr 2008 03:26:22 -0000	1.3
++++ svx/source/table/tablecolumn.hxx	21 Oct 2008 11:30:58 -0000	1.3.264.1
+@@ -51,6 +51,7 @@ typedef ::cppu::ImplInheritanceHelper2< 
+ class TableColumn : public TableColumnBase
+ {
+ 	friend class TableColumnUndo;
++    friend class TableModel;
+ public:
+ 	TableColumn( const TableModelRef& xTableModel, sal_Int32 nColumn );
+ 	virtual ~TableColumn();
+Index: source/table/tablemodel.cxx
+===================================================================
+RCS file: /cvs/graphics/svx/source/table/tablemodel.cxx,v
+retrieving revision 1.4
+retrieving revision 1.4.264.1
+diff -u -p -r1.4 -r1.4.264.1
+--- svx/source/table/tablemodel.cxx	11 Apr 2008 03:31:09 -0000	1.4
++++ svx/source/table/tablemodel.cxx	21 Oct 2008 11:30:58 -0000	1.4.264.1
+@@ -248,6 +248,7 @@ void TableModel::UndoInsertRows( sal_Int
+ 
+ 	// remove the rows
+ 	remove_range<RowVector,RowVector::iterator>( maRows, nIndex, nCount );
++    updateRows();
+ 	setModified(sal_True);
+ }
+ 
+@@ -264,6 +265,7 @@ void TableModel::UndoRemoveRows( sal_Int
+ 	for( sal_Int32 nOffset = 0; nOffset < nCount; ++nOffset )
+ 		maRows[nIndex+nOffset] = aRows[nOffset];
+ 
++    updateRows();
+ 	setModified(sal_True);
+ }
+ 
+@@ -278,6 +280,8 @@ void TableModel::UndoInsertColumns( sal_
+ 	sal_Int32 nRows = getRowCountImpl();
+ 	while( nRows-- )
+ 		maRows[nRows]->removeColumns( nIndex, nCount );
++
++    updateColumns();
+ 	setModified(sal_True);
+ }
+ 
+@@ -301,6 +305,8 @@ void TableModel::UndoRemoveColumns( sal_
+ 	sal_Int32 nRows = getRowCountImpl();
+ 	for( sal_Int32 nRow = 0; nRow < nRows; ++nRow )
+ 		maRows[nRow]->insertColumns( nIndex, nCount, &aIter );
++
++    updateColumns();
+ 	setModified(sal_True);
+ }
+ 
+@@ -802,6 +808,7 @@ void TableModel::insertColumns( sal_Int3
+ 		{
+ 			DBG_ERROR("sdr::table::TableModel::insertColumns(), exception caught!");
+ 		}
++        updateColumns();
+ 		setModified(sal_True);
+ 	}
+ }
+@@ -905,6 +912,7 @@ void TableModel::removeColumns( sal_Int3
+ 			DBG_ERROR("sdr::table::TableModel::removeColumns(), exception caught!");
+ 		}
+ 
++        updateColumns();
+ 		setModified(sal_True);
+ 	}
+ }
+@@ -975,6 +983,7 @@ void TableModel::insertRows( sal_Int32 n
+ 		{
+ 			DBG_ERROR("sdr::table::TableModel::insertRows(), exception caught!");
+ 		}
++        updateRows();
+ 		setModified(sal_True);
+ 	}
+ }
+@@ -1063,6 +1072,7 @@ void TableModel::removeRows( sal_Int32 n
+ 			DBG_ERROR("sdr::table::TableModel::removeRows(), exception caught!");
+ 		}
+ 
++        updateRows();
+ 		setModified(sal_True);
+ 	}
+ }
+@@ -1178,4 +1188,28 @@ void TableModel::optimize()
+ 
+ // -----------------------------------------------------------------------------
+ 
++void TableModel::updateRows()
++{
++    sal_Int32 nRow = 0;
++    RowVector::iterator iter = maRows.begin();
++    while( iter != maRows.end() )
++    {
++        (*iter++)->mnRow = nRow++;
++    }
++}
++
++// -----------------------------------------------------------------------------
++
++void TableModel::updateColumns()
++{
++    sal_Int32 nColumn = 0;
++    ColumnVector::iterator iter = maColumns.begin();
++    while( iter != maColumns.end() )
++    {
++        (*iter++)->mnColumn = nColumn++;
++    }
++}
++
++// -----------------------------------------------------------------------------
++
+ } }
+Index: source/table/tablemodel.hxx
+===================================================================
+RCS file: /cvs/graphics/svx/source/table/tablemodel.hxx,v
+retrieving revision 1.3
+retrieving revision 1.3.264.1
+diff -u -p -r1.3 -r1.3.264.1
+--- svx/source/table/tablemodel.hxx	11 Apr 2008 03:31:36 -0000	1.3
++++ svx/source/table/tablemodel.hxx	21 Oct 2008 11:30:58 -0000	1.3.264.1
+@@ -176,6 +176,9 @@ private:
+ 	TableRowRef getRow( sal_Int32 nRow ) const throw (::com::sun::star::lang::IndexOutOfBoundsException);
+ 	TableColumnRef getColumn( sal_Int32 nColumn ) const throw (::com::sun::star::lang::IndexOutOfBoundsException);
+ 
++    void updateRows();
++    void updateColumns();
++
+ 	RowVector		maRows;
+ 	ColumnVector	maColumns;
+ 
+Index: source/table/tablerow.cxx
+===================================================================
+RCS file: /cvs/graphics/svx/source/table/tablerow.cxx,v
+retrieving revision 1.3
+retrieving revision 1.3.264.1
+diff -u -p -r1.3 -r1.3.264.1
+--- svx/source/table/tablerow.cxx	11 Apr 2008 03:32:04 -0000	1.3
++++ svx/source/table/tablerow.cxx	21 Oct 2008 11:30:58 -0000	1.3.264.1
+@@ -129,36 +129,15 @@ void TableRow::insertColumns( sal_Int32 
+ 	throwIfDisposed();
+ 	if( nCount )
+ 	{
+-		if( nIndex < static_cast< sal_Int32 >( maCells.size() ) )
+-		{
+-			CellVector::iterator aIter( maCells.begin() );
+-			while( nIndex-- )
+-				aIter++;
+-			while( nCount-- )
+-			{
+-				CellRef xCell;
+-				if( pIter )
+-					xCell = (*(*pIter)++);
+-				else
+-					xCell = mxTableModel->createCell();
+-				
+-				maCells.insert( aIter, xCell );
+-			}
+-		}
++		if( nIndex >= static_cast< sal_Int32 >( maCells.size() ) )
++			nIndex = static_cast< sal_Int32 >( maCells.size() );
++		if ( pIter )
++			maCells.insert( maCells.begin() + nIndex, *pIter, (*pIter) + nCount );
+ 		else
+ 		{
+-			nIndex = static_cast< sal_Int32 >( maCells.size() );
+-			maCells.resize( nIndex + nCount );
+-			while(nCount--)
+-			{
+-				CellRef xCell;
+-				if( pIter )
+-					xCell = (*(*pIter)++);
+-				else
+-					xCell = mxTableModel->createCell();
+-			
+-				maCells[nIndex++] = xCell;
+-			}
++			maCells.reserve( maCells.size() + nCount );
++			for ( sal_Int32 i = 0; i < nCount; i++ )
++				maCells.insert( maCells.begin() + nIndex + i, mxTableModel->createCell() );
+ 		}
+ 	}
+ }
+Index: source/xml/xmlxtimp.cxx
+===================================================================
+RCS file: /cvs/graphics/svx/source/xml/xmlxtimp.cxx,v
+retrieving revision 1.17
+retrieving revision 1.17.264.1
+diff -u -p -r1.17 -r1.17.264.1
+--- svx/source/xml/xmlxtimp.cxx	11 Apr 2008 04:12:08 -0000	1.17
++++ svx/source/xml/xmlxtimp.cxx	20 Oct 2008 15:02:51 -0000	1.17.264.1
+@@ -260,8 +260,15 @@ void SvxXMLTableImportContext::importMar
+ 	(void)nPrfx;
+ 	(void)rLocalName;
+ 
+-	XMLMarkerStyleImport aMarkerStyle( GetImport() );
+-	aMarkerStyle.importXML( xAttrList, rAny, rName );
++    try
++    {
++	    XMLMarkerStyleImport aMarkerStyle( GetImport() );
++	    aMarkerStyle.importXML( xAttrList, rAny, rName );
++    }
++    catch( Exception& )
++    {
++        DBG_ERROR("SvxXMLTableImportContext::importMarker(), exception caught!");
++    }
+ }
+ 
+ void SvxXMLTableImportContext::importDash( USHORT nPrfx, const OUString& rLocalName, const uno::Reference< XAttributeList >& xAttrList, Any& rAny, OUString& rName )
+@@ -269,8 +276,15 @@ void SvxXMLTableImportContext::importDas
+ 	(void)nPrfx;
+ 	(void)rLocalName;
+ 
+-	XMLDashStyleImport aDashStyle( GetImport() );
+-	aDashStyle.importXML( xAttrList, rAny, rName );
++    try
++    {
++    	XMLDashStyleImport aDashStyle( GetImport() );
++	    aDashStyle.importXML( xAttrList, rAny, rName );
++    }
++    catch( Exception& )
++    {
++        DBG_ERROR("SvxXMLTableImportContext::importDash(), exception caught!");
++    }
+ }
+ 
+ void SvxXMLTableImportContext::importHatch( USHORT nPrfx, const OUString& rLocalName, const uno::Reference< XAttributeList >& xAttrList, Any& rAny, OUString& rName )
+@@ -278,8 +292,15 @@ void SvxXMLTableImportContext::importHat
+ 	(void)nPrfx;
+ 	(void)rLocalName;
+ 
+-	XMLHatchStyleImport aHatchStyle( GetImport() );
+-	aHatchStyle.importXML( xAttrList, rAny, rName );
++    try
++    {
++    	XMLHatchStyleImport aHatchStyle( GetImport() );
++	    aHatchStyle.importXML( xAttrList, rAny, rName );
++    }
++    catch( Exception& )
++    {
++        DBG_ERROR("SvxXMLTableImportContext::importHatch(), exception caught!");
++    }
+ }
+ 
+ void SvxXMLTableImportContext::importGradient( USHORT nPrfx, const OUString& rLocalName, const uno::Reference< XAttributeList >& xAttrList, Any& rAny, OUString& rName )
+@@ -287,8 +308,15 @@ void SvxXMLTableImportContext::importGra
+ 	(void)nPrfx;
+ 	(void)rLocalName;
+ 
+-	XMLGradientStyleImport aGradientStyle( GetImport() );
+-	aGradientStyle.importXML( xAttrList, rAny, rName );
++    try
++    {
++    	XMLGradientStyleImport aGradientStyle( GetImport() );
++	    aGradientStyle.importXML( xAttrList, rAny, rName );
++    }
++    catch( Exception& )
++    {
++        DBG_ERROR("SvxXMLTableImportContext::importGradient(), exception caught!");
++    }
+ }
+ 
+ void SvxXMLTableImportContext::importBitmap( USHORT nPrfx, const OUString& rLocalName, const uno::Reference< XAttributeList >& xAttrList, Any& rAny, OUString& rName )
+@@ -296,8 +324,15 @@ void SvxXMLTableImportContext::importBit
+ 	(void)nPrfx;
+ 	(void)rLocalName;
+ 
+-	XMLImageStyle aImageStyle;
+-	aImageStyle.importXML( xAttrList, rAny, rName, GetImport() );
++	try
++    {
++        XMLImageStyle aImageStyle;
++	    aImageStyle.importXML( xAttrList, rAny, rName, GetImport() );
++    }
++    catch( Exception& )
++    {
++        DBG_ERROR("SvxXMLTableImportContext::importBitmap(), exception caught!");
++    }
+ }
+ 
+ ///////////////////////////////////////////////////////////////////////



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]