Kaydet (Commit) 7d754a84 authored tarafından Michael Stahl's avatar Michael Stahl

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
üst 3da82561
......@@ -105,7 +105,10 @@ void ScAnnontationObj::setUp()
void ScAnnontationObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
{
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
}
......
......@@ -63,6 +63,7 @@ void ScAnnotationShapeObj::tearDown()
{
mxField.clear();
closeDocument(mxComponent);
mxComponent.clear();
}
UnoApiTest::tearDown();
......
......@@ -89,7 +89,10 @@ void ScAnnontationsObj::setUp()
void ScAnnontationsObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
{
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
}
......
......@@ -119,7 +119,10 @@ void ScCellRangeObj::setUp()
void ScCellRangeObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
{
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
}
......
......@@ -78,7 +78,10 @@ void ScDatabaseRangeObj::setUp()
void ScDatabaseRangeObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
{
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
}
......
......@@ -94,7 +94,10 @@ void ScDataPilotFieldObj::setUp()
void ScDataPilotFieldObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
{
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
}
......
......@@ -148,7 +148,10 @@ void ScDataPilotTableObj::setUp()
void ScDataPilotTableObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
{
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
}
......
......@@ -87,6 +87,7 @@ void ScEditFieldObj_Cell::tearDown()
{
mxField.clear();
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
......
......@@ -85,6 +85,7 @@ void ScEditFieldObj_Header::tearDown()
mxField.clear();
mxRightText.clear();
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
......
......@@ -64,7 +64,10 @@ void ScModelObj::setUp()
void ScModelObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
{
closeDocument(mxComponent);
mxComponent.clear();
}
UnoApiTest::tearDown();
}
......
......@@ -102,7 +102,10 @@ void ScNamedRangeObj::setUp()
void ScNamedRangeObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
{
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
}
......
......@@ -80,7 +80,10 @@ void ScNamedRangesObj::setUp()
void ScNamedRangesObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
{
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
}
......
......@@ -79,7 +79,10 @@ void ScOutlineObj::setUp()
void ScOutlineObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
{
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
}
......
......@@ -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();
}
......
......@@ -102,7 +102,10 @@ void ScTableSheetsObj::setUp()
void ScTableSheetsObj::tearDown()
{
if (nTest == NUMBER_OF_TESTS)
{
closeDocument(mxComponent);
mxComponent.clear();
}
CalcUnoApiTest::tearDown();
}
......
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