[Libreoffice-commits] core.git: Branch 'libreoffice-4-3' - sc/inc sc/source
Markus Mohrhard
markus.mohrhard at collabora.co.uk
Tue Dec 9 01:16:08 PST 2014
sc/inc/column.hxx | 1 +
sc/source/core/data/column3.cxx | 6 ++++++
sc/source/core/data/table1.cxx | 4 ++++
3 files changed, 11 insertions(+)
New commits:
commit 8efdd9909cc46b4a00236f148f2f5c8349377c33
Author: Markus Mohrhard <markus.mohrhard at collabora.co.uk>
Date: Mon Dec 8 07:43:14 2014 +0100
we need the SdrPage for deleting the notes, fdo#86166
The SdrPage that contains the shapes for the note captions is deleted
before the notes. Prevent that case by deleting the notes before
deleting the SdrPage.
Change-Id: I13727cea7df0b033fb386a6a8e20dcadec743335
Reviewed-on: https://gerrit.libreoffice.org/13362
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx
index 6911ca0..dee712f 100644
--- a/sc/inc/column.hxx
+++ b/sc/inc/column.hxx
@@ -187,6 +187,7 @@ public:
void Delete( SCROW nRow );
void FreeAll();
+ void FreeNotes();
void Swap( ScColumn& rOther, SCROW nRow1, SCROW nRow2, bool bPattern );
bool HasAttrib( SCROW nRow1, SCROW nRow2, sal_uInt16 nMask ) const;
diff --git a/sc/source/core/data/column3.cxx b/sc/source/core/data/column3.cxx
index 924c9e3..3c39880 100644
--- a/sc/source/core/data/column3.cxx
+++ b/sc/source/core/data/column3.cxx
@@ -141,6 +141,12 @@ void ScColumn::FreeAll()
CellStorageModified();
}
+void ScColumn::FreeNotes()
+{
+ maCellNotes.clear();
+ maCellNotes.resize(MAXROWCOUNT);
+}
+
namespace {
class ShiftFormulaPosHandler
diff --git a/sc/source/core/data/table1.cxx b/sc/source/core/data/table1.cxx
index 94cf672..2b1c2c9 100644
--- a/sc/source/core/data/table1.cxx
+++ b/sc/source/core/data/table1.cxx
@@ -319,6 +319,10 @@ ScTable::~ScTable()
{
if (!pDocument->IsInDtorClear())
{
+ for (SCCOL nCol = 0; nCol < MAXCOL; ++nCol)
+ {
+ aCol[nCol].FreeNotes();
+ }
// nicht im dtor die Pages in der falschen Reihenfolge loeschen
// (nTab stimmt dann als Page-Number nicht!)
// In ScDocument::Clear wird hinterher per Clear am Draw Layer alles geloescht.
More information about the Libreoffice-commits
mailing list