Kaydet (Commit) f9aa6864 authored tarafından Caolán McNamara's avatar Caolán McNamara

Resolves: fdo#81496 crash in calc format page

Change-Id: Ic70f6f605e13a5c95b504f1bf0322e11313a21e7
üst 4aaa4cee
...@@ -133,7 +133,7 @@ void ScDocument::InitDrawLayer( SfxObjectShell* pDocShell ) ...@@ -133,7 +133,7 @@ void ScDocument::InitDrawLayer( SfxObjectShell* pDocShell )
sfx2::LinkManager* pMgr = GetDocLinkManager().getLinkManager(bAutoCalc); sfx2::LinkManager* pMgr = GetDocLinkManager().getLinkManager(bAutoCalc);
if (pMgr) if (pMgr)
pDrawLayer->SetLinkManager(pMgr); pDrawLayer->SetLinkManager(pMgr);
#if 1
//UUUU set DrawingLayer's SfxItemPool at Calc's SfxItemPool as //UUUU set DrawingLayer's SfxItemPool at Calc's SfxItemPool as
// secondary pool to support DrawingLayer FillStyle ranges (and similar) // secondary pool to support DrawingLayer FillStyle ranges (and similar)
// in SfxItemSets using the Calc SfxItemPool. This is e.g. needed when // in SfxItemSets using the Calc SfxItemPool. This is e.g. needed when
...@@ -146,13 +146,9 @@ void ScDocument::InitDrawLayer( SfxObjectShell* pDocShell ) ...@@ -146,13 +146,9 @@ void ScDocument::InitDrawLayer( SfxObjectShell* pDocShell )
if(pLocalPool) if(pLocalPool)
{ {
OSL_ENSURE(!pLocalPool->GetSecondaryPool(), "OOps, already a secondary pool set where the DrawingLayer ItemPool is to be placed (!)"); OSL_ENSURE(!pLocalPool->GetSecondaryPool(), "OOps, already a secondary pool set where the DrawingLayer ItemPool is to be placed (!)");
#if 0
// FIXME apparently this is disabled because it breaks tests
pLocalPool->SetSecondaryPool(&pDrawLayer->GetItemPool()); pLocalPool->SetSecondaryPool(&pDrawLayer->GetItemPool());
#endif
} }
} }
#endif
// Drawing pages are accessed by table number, so they must also be present // Drawing pages are accessed by table number, so they must also be present
// for preceding table numbers, even if the tables aren't allocated // for preceding table numbers, even if the tables aren't allocated
...@@ -252,10 +248,7 @@ void ScDocument::DeleteDrawLayer() ...@@ -252,10 +248,7 @@ void ScDocument::DeleteDrawLayer()
if(pLocalPool && pLocalPool->GetSecondaryPool()) if(pLocalPool && pLocalPool->GetSecondaryPool())
{ {
#if 0
// FIXME apparently this is disabled because it breaks tests
pLocalPool->SetSecondaryPool(0); pLocalPool->SetSecondaryPool(0);
#endif
} }
} }
delete pDrawLayer; delete pDrawLayer;
......
...@@ -46,7 +46,10 @@ lcl_CheckSlots2(std::map<sal_uInt16, sal_uInt16> & rSlotMap, ...@@ -46,7 +46,10 @@ lcl_CheckSlots2(std::map<sal_uInt16, sal_uInt16> & rSlotMap,
sal_uInt16 const nSlotId(pInfos[n]._nSID); sal_uInt16 const nSlotId(pInfos[n]._nSID);
if (nSlotId != 0 if (nSlotId != 0
&& nSlotId != 10883 // preexisting duplicate SID_ATTR_GRAF_CROP && nSlotId != 10883 // preexisting duplicate SID_ATTR_GRAF_CROP
&& nSlotId != 10024) // preexisting duplicate SID_ATTR_BORDER_OUTER && nSlotId != 10023 // preexisting duplicate SID_ATTR_BORDER_INNER
&& nSlotId != 10024 // preexisting duplicate SID_ATTR_BORDER_OUTER
&& nSlotId != 11013 // preexisting duplicate SID_ATTR_BORDER_DIAG_TLBR
&& nSlotId != 11014) // preexisting duplicate SID_ATTR_BORDER_DIAG_BLTR
{ // check for duplicate slot-id mapping { // check for duplicate slot-id mapping
std::map<sal_uInt16, sal_uInt16>::const_iterator const iter( std::map<sal_uInt16, sal_uInt16>::const_iterator const iter(
rSlotMap.find(nSlotId)); rSlotMap.find(nSlotId));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment