summaryrefslogtreecommitdiffstats
path: root/sc/qa/extras
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2014-09-30 15:51:07 +0200
committerMichael Stahl <mstahl@redhat.com>2014-09-30 17:34:26 +0200
commit7d754a84926196ff97b548fb5ac4490031885803 (patch)
tree343018079dad89d5fd2bec8662d7e21bf0bb21d2 /sc/qa/extras
parentSvxShape destructor un-register at broadcaster with SolarMutex locked (diff)
downloadcore-7d754a84926196ff97b548fb5ac4490031885803.tar.gz
core-7d754a84926196ff97b548fb5ac4490031885803.zip
sc: ensure global variables in tests are cleared before shutdown
If the destructors run from exit handlers, they could access already deleted globals from VCL etc. and crash. Change-Id: I265046e95998a4384e1ce0f1f205d03c078a40a9
Diffstat (limited to 'sc/qa/extras')
-rw-r--r--sc/qa/extras/scannotationobj.cxx3
-rw-r--r--sc/qa/extras/scannotationshapeobj.cxx1
-rw-r--r--sc/qa/extras/scannotationsobj.cxx3
-rw-r--r--sc/qa/extras/sccellrangeobj.cxx3
-rw-r--r--sc/qa/extras/scdatabaserangeobj.cxx3
-rw-r--r--sc/qa/extras/scdatapilotfieldobj.cxx3
-rw-r--r--sc/qa/extras/scdatapilottableobj.cxx3
-rw-r--r--sc/qa/extras/sceditfieldobj-cell.cxx1
-rw-r--r--sc/qa/extras/sceditfieldobj-header.cxx1
-rw-r--r--sc/qa/extras/scmodelobj.cxx3
-rw-r--r--sc/qa/extras/scnamedrangeobj.cxx3
-rw-r--r--sc/qa/extras/scnamedrangesobj.cxx3
-rw-r--r--sc/qa/extras/scoutlineobj.cxx3
-rw-r--r--sc/qa/extras/scstyleloaderobj.cxx6
-rw-r--r--sc/qa/extras/sctablesheetsobj.cxx3
15 files changed, 42 insertions, 0 deletions
diff --git a/sc/qa/extras/scannotationobj.cxx b/sc/qa/extras/scannotationobj.cxx
index 00933c8e8a86..8f2433912cb5 100644
--- a/sc/qa/extras/scannotationobj.cxx
+++ b/sc/qa/extras/scannotationobj.cxx
@@ -105,7 +105,10 @@ void ScAnnontationObj::setUp()
void ScAnnontationObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
+ {
closeDocument(mxComponent);
+ mxComponent.clear();
+ }
CalcUnoApiTest::tearDown();
}
diff --git a/sc/qa/extras/scannotationshapeobj.cxx b/sc/qa/extras/scannotationshapeobj.cxx
index f306e935f8b1..7e3c241a21f6 100644
--- a/sc/qa/extras/scannotationshapeobj.cxx
+++ b/sc/qa/extras/scannotationshapeobj.cxx
@@ -63,6 +63,7 @@ void ScAnnotationShapeObj::tearDown()
{
mxField.clear();
closeDocument(mxComponent);
+ mxComponent.clear();
}
UnoApiTest::tearDown();
diff --git a/sc/qa/extras/scannotationsobj.cxx b/sc/qa/extras/scannotationsobj.cxx
index 9bcd60eacefc..e011ac0eaf78 100644
--- a/sc/qa/extras/scannotationsobj.cxx
+++ b/sc/qa/extras/scannotationsobj.cxx
@@ -89,7 +89,10 @@ void ScAnnontationsObj::setUp()
void ScAnnontationsObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
+ {
closeDocument(mxComponent);
+ mxComponent.clear();
+ }
CalcUnoApiTest::tearDown();
}
diff --git a/sc/qa/extras/sccellrangeobj.cxx b/sc/qa/extras/sccellrangeobj.cxx
index 59d9986322b3..058967618fbe 100644
--- a/sc/qa/extras/sccellrangeobj.cxx
+++ b/sc/qa/extras/sccellrangeobj.cxx
@@ -119,7 +119,10 @@ void ScCellRangeObj::setUp()
void ScCellRangeObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
+ {
closeDocument(mxComponent);
+ mxComponent.clear();
+ }
CalcUnoApiTest::tearDown();
}
diff --git a/sc/qa/extras/scdatabaserangeobj.cxx b/sc/qa/extras/scdatabaserangeobj.cxx
index 6665ea9cb189..a25b1ffe4eac 100644
--- a/sc/qa/extras/scdatabaserangeobj.cxx
+++ b/sc/qa/extras/scdatabaserangeobj.cxx
@@ -78,7 +78,10 @@ void ScDatabaseRangeObj::setUp()
void ScDatabaseRangeObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
+ {
closeDocument(mxComponent);
+ mxComponent.clear();
+ }
CalcUnoApiTest::tearDown();
}
diff --git a/sc/qa/extras/scdatapilotfieldobj.cxx b/sc/qa/extras/scdatapilotfieldobj.cxx
index df28860fc5b4..cad8aa7297aa 100644
--- a/sc/qa/extras/scdatapilotfieldobj.cxx
+++ b/sc/qa/extras/scdatapilotfieldobj.cxx
@@ -94,7 +94,10 @@ void ScDataPilotFieldObj::setUp()
void ScDataPilotFieldObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
+ {
closeDocument(mxComponent);
+ mxComponent.clear();
+ }
CalcUnoApiTest::tearDown();
}
diff --git a/sc/qa/extras/scdatapilottableobj.cxx b/sc/qa/extras/scdatapilottableobj.cxx
index d21069166f78..9f4e0a03f711 100644
--- a/sc/qa/extras/scdatapilottableobj.cxx
+++ b/sc/qa/extras/scdatapilottableobj.cxx
@@ -148,7 +148,10 @@ void ScDataPilotTableObj::setUp()
void ScDataPilotTableObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
+ {
closeDocument(mxComponent);
+ mxComponent.clear();
+ }
CalcUnoApiTest::tearDown();
}
diff --git a/sc/qa/extras/sceditfieldobj-cell.cxx b/sc/qa/extras/sceditfieldobj-cell.cxx
index 39ea41c94fe3..878210b7ab34 100644
--- a/sc/qa/extras/sceditfieldobj-cell.cxx
+++ b/sc/qa/extras/sceditfieldobj-cell.cxx
@@ -87,6 +87,7 @@ void ScEditFieldObj_Cell::tearDown()
{
mxField.clear();
closeDocument(mxComponent);
+ mxComponent.clear();
}
CalcUnoApiTest::tearDown();
diff --git a/sc/qa/extras/sceditfieldobj-header.cxx b/sc/qa/extras/sceditfieldobj-header.cxx
index 47ec24ce66e1..c72befda1dfd 100644
--- a/sc/qa/extras/sceditfieldobj-header.cxx
+++ b/sc/qa/extras/sceditfieldobj-header.cxx
@@ -85,6 +85,7 @@ void ScEditFieldObj_Header::tearDown()
mxField.clear();
mxRightText.clear();
closeDocument(mxComponent);
+ mxComponent.clear();
}
CalcUnoApiTest::tearDown();
diff --git a/sc/qa/extras/scmodelobj.cxx b/sc/qa/extras/scmodelobj.cxx
index 65b2ee07af5a..bb04af931bfe 100644
--- a/sc/qa/extras/scmodelobj.cxx
+++ b/sc/qa/extras/scmodelobj.cxx
@@ -64,7 +64,10 @@ void ScModelObj::setUp()
void ScModelObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
+ {
closeDocument(mxComponent);
+ mxComponent.clear();
+ }
UnoApiTest::tearDown();
}
diff --git a/sc/qa/extras/scnamedrangeobj.cxx b/sc/qa/extras/scnamedrangeobj.cxx
index 9ceb7db1a94c..da6e331ac1b8 100644
--- a/sc/qa/extras/scnamedrangeobj.cxx
+++ b/sc/qa/extras/scnamedrangeobj.cxx
@@ -102,7 +102,10 @@ void ScNamedRangeObj::setUp()
void ScNamedRangeObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
+ {
closeDocument(mxComponent);
+ mxComponent.clear();
+ }
CalcUnoApiTest::tearDown();
}
diff --git a/sc/qa/extras/scnamedrangesobj.cxx b/sc/qa/extras/scnamedrangesobj.cxx
index 948c3fdf2ea4..d3eb0f379253 100644
--- a/sc/qa/extras/scnamedrangesobj.cxx
+++ b/sc/qa/extras/scnamedrangesobj.cxx
@@ -80,7 +80,10 @@ void ScNamedRangesObj::setUp()
void ScNamedRangesObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
+ {
closeDocument(mxComponent);
+ mxComponent.clear();
+ }
CalcUnoApiTest::tearDown();
}
diff --git a/sc/qa/extras/scoutlineobj.cxx b/sc/qa/extras/scoutlineobj.cxx
index 51d7d2837117..cd27392d0346 100644
--- a/sc/qa/extras/scoutlineobj.cxx
+++ b/sc/qa/extras/scoutlineobj.cxx
@@ -79,7 +79,10 @@ void ScOutlineObj::setUp()
void ScOutlineObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
+ {
closeDocument(mxComponent);
+ mxComponent.clear();
+ }
CalcUnoApiTest::tearDown();
}
diff --git a/sc/qa/extras/scstyleloaderobj.cxx b/sc/qa/extras/scstyleloaderobj.cxx
index 996436f046cd..e79e445bba80 100644
--- a/sc/qa/extras/scstyleloaderobj.cxx
+++ b/sc/qa/extras/scstyleloaderobj.cxx
@@ -109,9 +109,15 @@ void ScStyleLoaderObj::tearDown()
if (nTest == NUMBER_OF_TESTS)
{
if (mxSourceComponent.is())
+ {
closeDocument(mxSourceComponent);
+ mxSourceComponent.clear();
+ }
if (mxTargetComponent.is())
+ {
closeDocument(mxTargetComponent);
+ mxTargetComponent.clear();
+ }
}
CalcUnoApiTest::tearDown();
}
diff --git a/sc/qa/extras/sctablesheetsobj.cxx b/sc/qa/extras/sctablesheetsobj.cxx
index 8db4a5dc6990..0d71349771c8 100644
--- a/sc/qa/extras/sctablesheetsobj.cxx
+++ b/sc/qa/extras/sctablesheetsobj.cxx
@@ -102,7 +102,10 @@ void ScTableSheetsObj::setUp()
void ScTableSheetsObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
+ {
closeDocument(mxComponent);
+ mxComponent.clear();
+ }
CalcUnoApiTest::tearDown();
}