[Libreoffice-commits] core.git: Branch 'feature/formula-core-rework' - 78 commits - basctl/source basic/source chart2/source comphelper/source compilerplugins/clang connectivity/Library_mozabdrv.mk connectivity/source cui/source dbaccess/source desktop/source dictionaries download.lst extensions/source filter/source forms/source framework/inc framework/Library_fwk.mk framework/source framework/util harfbuzz/harfbuzz.configure.patch.1 helpcontent2 include/sfx2 include/svtools include/toolkit include/vcl languagetool/ExternalProject_languagetool.mk libodfgen/ExternalPackage_libodfgen.mk liborcus/UnpackedTarball_liborcus.mk liborcus/visibility.patch mdds/0001-Avoid-crash-when-_GLIBCXX_DEBUG-is-defined.patch mdds/UnpackedTarball_mdds.mk nss/ExternalProject_nss.mk nss/nss_macosx.patch offapi/com offapi/UnoApi_offapi.mk officecfg/registry oox/source package/source qadevOOo/runner qadevOOo/tests reportdesign/source sc/qa scripting/source sc/source sd/AllLangResTarget_sd.mk sdext/source sd/source sd/uiconfig sd/UIConfig_simpress.mk sfx2/source solenv/bin solenv/gbuild solenv/gdb starmath/inc starmath/source starmath/uiconfig starmath/UIConfig_smath.mk svtools/source svx/source sw/source toolkit/source ucb/source unotools/source unoxml/source vcl/inc vcl/source xmloff/source
Kohei Yoshida
kohei.yoshida at gmail.com
Wed May 22 10:20:04 PDT 2013
Rebased ref, commits from common ancestor:
commit 5b7c4ecee2236665a4a623dd5d1a0aad29c4271f
Author: Kohei Yoshida <kohei.yoshida at gmail.com>
Date: Wed May 22 13:19:22 2013 -0400
Turn on the perf test again. Will turn it off before merging.
Change-Id: If93a2b7830a15a85b7c89daee462378cc244c690
diff --git a/sc/qa/unit/ucalc.cxx b/sc/qa/unit/ucalc.cxx
index 3f306d0..12fb593 100644
--- a/sc/qa/unit/ucalc.cxx
+++ b/sc/qa/unit/ucalc.cxx
@@ -77,7 +77,7 @@
#include <vector>
#define CALC_DEBUG_OUTPUT 0
-#define CALC_TEST_PERF 0
+#define CALC_TEST_PERF 1
#include "helper/debughelper.hxx"
#include "helper/qahelper.hxx"
commit 4fa7a0ce8131106a038ba441bcc230d0377690ac
Author: Kohei Yoshida <kohei.yoshida at gmail.com>
Date: Wed May 22 12:14:24 2013 -0400
Disable Calc perf test by default & output both pseudo-cycles and real time.
Change-Id: I35120e576208640976cdda0a5628e355bbe2dc7c
diff --git a/sc/qa/unit/ucalc.cxx b/sc/qa/unit/ucalc.cxx
index 90da5f0..3f306d0 100644
--- a/sc/qa/unit/ucalc.cxx
+++ b/sc/qa/unit/ucalc.cxx
@@ -77,6 +77,7 @@
#include <vector>
#define CALC_DEBUG_OUTPUT 0
+#define CALC_TEST_PERF 0
#include "helper/debughelper.hxx"
#include "helper/qahelper.hxx"
@@ -92,16 +93,6 @@ using ::std::vector;
namespace {
-double getTimeDiff(const TimeValue& t1, const TimeValue& t2)
-{
- double tv1 = t1.Seconds;
- double tv2 = t2.Seconds;
- tv1 += t1.Nanosec / 1000000000.0;
- tv2 += t2.Nanosec / 1000000000.0;
-
- return tv1 - tv2;
-}
-
class Test : public test::BootstrapFixture {
public:
Test();
@@ -283,7 +274,7 @@ public:
void testCondFormatINSDEL();
CPPUNIT_TEST_SUITE(Test);
-#if !defined(DBG_UTIL) && !defined(_WIN32_WINNT)
+#if CALC_TEST_PERF
CPPUNIT_TEST(testPerf);
#endif
CPPUNIT_TEST(testCollator);
@@ -447,20 +438,11 @@ public:
class MeasureTimeSwitch
{
double& mrDiff;
- double mnScale;
TimeValue maTimeBefore;
public:
MeasureTimeSwitch(double& rDiff) : mrDiff(rDiff)
{
mrDiff = 9999.0;
- mnScale = 1.0;
- osl_getSystemTime(&maTimeBefore);
- }
- // Scaled pseudo-time
- MeasureTimeSwitch(double& rDiff, const double nScale ) : mrDiff(rDiff)
- {
- mrDiff = 9999.0;
- mnScale = nScale;
osl_getSystemTime(&maTimeBefore);
}
@@ -468,7 +450,17 @@ public:
{
TimeValue aTimeAfter;
osl_getSystemTime(&aTimeAfter);
- mrDiff = getTimeDiff(aTimeAfter, maTimeBefore) / mnScale;
+ mrDiff = getTimeDiff(aTimeAfter, maTimeBefore);
+ }
+
+ double getTimeDiff(const TimeValue& t1, const TimeValue& t2) const
+ {
+ double tv1 = t1.Seconds;
+ double tv2 = t2.Seconds;
+ tv1 += t1.Nanosec / 1000000000.0;
+ tv2 += t2.Nanosec / 1000000000.0;
+
+ return tv1 - tv2;
}
};
@@ -497,13 +489,13 @@ void Test::tearDown()
BootstrapFixture::tearDown();
}
-#define PERF_ASSERT(df,time,message) \
+#define PERF_ASSERT(df,scale,time,message) \
do { \
- if ((df) >= (time)) \
+ double dfscaled = df / scale; \
+ if ((dfscaled) >= (time)) \
{ \
std::ostringstream os; \
- os << message << " took " << diff << " psuedo-cycles, expected: " << time; \
- /* debugging - fprintf (stderr, "'%s'\n", os.str().c_str()); */ \
+ os << message << " took " << dfscaled << " pseudo-cycles (" << df << " real-time seconds), expected: " << time << " pseudo-cycles."; \
CPPUNIT_FAIL(os.str().c_str()); \
} \
} while (0)
@@ -545,10 +537,10 @@ void Test::testPerf()
// second. Flag failure if it takes more than one second. Clearing 100
// columns should be large enough to flag if something goes wrong.
{
- MeasureTimeSwitch aTime(diff, scale);
+ MeasureTimeSwitch aTime(diff);
clearRange(m_pDoc, ScRange(0,0,0,99,MAXROW,0));
}
- PERF_ASSERT(diff, 1.0, "Clearing an empty sheet");
+ PERF_ASSERT(diff, scale, 1.0, "Clearing an empty sheet");
{
// Switch to R1C1 to make it easier to input relative references in multiple cells.
@@ -563,10 +555,10 @@ void Test::testPerf()
// Now, Delete B2:B100000. This should complete in a fraction of a second
// (0.06 sec on my machine).
{
- MeasureTimeSwitch aTime(diff, scale);
+ MeasureTimeSwitch aTime(diff);
clearRange(m_pDoc, ScRange(1,1,0,1,99999,0));
}
- PERF_ASSERT(diff, 3000, "Removal of a large array of formula cells");
+ PERF_ASSERT(diff, scale, 2000, "Removal of a large array of formula cells");
}
clearRange(m_pDoc, ScRange(0,0,0,1,MAXROW,0)); // Clear columns A:B.
@@ -597,10 +589,10 @@ void Test::testPerf()
aMark.SetMarkArea(aPasteRange);
{
- MeasureTimeSwitch aTime(diff, scale);
+ MeasureTimeSwitch aTime(diff);
m_pDoc->CopyFromClip(aPasteRange, aMark, IDF_CONTENTS, pUndoDoc, &aClipDoc);
}
- PERF_ASSERT(diff, 1500.0, "Pasting a single cell to A2:A100000");
+ PERF_ASSERT(diff, scale, 1500.0, "Pasting a single cell to A2:A100000");
ScDocument* pRedoDoc = new ScDocument(SCDOCMODE_UNDO);
pRedoDoc->InitUndo(m_pDoc, 0, 0);
@@ -615,10 +607,10 @@ void Test::testPerf()
CPPUNIT_ASSERT_EQUAL(m_pDoc->GetString(aPos), m_pDoc->GetString(aPasteRange.aEnd));
{
- MeasureTimeSwitch aTime(diff, scale);
+ MeasureTimeSwitch aTime(diff);
aUndo.Undo();
}
- PERF_ASSERT(diff, 500.0, "Undoing a pasting of a cell to A2:A100000");
+ PERF_ASSERT(diff, scale, 500.0, "Undoing a pasting of a cell to A2:A100000");
// Make sure it's really undone.
CPPUNIT_ASSERT_EQUAL(CELLTYPE_STRING, m_pDoc->GetCellType(aPos));
@@ -627,10 +619,10 @@ void Test::testPerf()
// Now redo.
{
- MeasureTimeSwitch aTime(diff, scale);
+ MeasureTimeSwitch aTime(diff);
aUndo.Redo();
}
- PERF_ASSERT(diff, 1000.0, "Redoing a pasting of a cell to A2:A100000");
+ PERF_ASSERT(diff, scale, 1000.0, "Redoing a pasting of a cell to A2:A100000");
// Make sure it's really redone.
CPPUNIT_ASSERT_EQUAL(m_pDoc->GetString(aPos), m_pDoc->GetString(aPasteRange.aStart));
@@ -668,10 +660,10 @@ void Test::testPerf()
aMark.SetMarkArea(aPasteRange);
{
- MeasureTimeSwitch aTime(diff, scale);
+ MeasureTimeSwitch aTime(diff);
m_pDoc->CopyFromClip(aPasteRange, aMark, IDF_CONTENTS, pUndoDoc, &aClipDoc);
}
- PERF_ASSERT(diff, 1000.0, "Pasting A1:A2 to A3:A100001");
+ PERF_ASSERT(diff, scale, 1000.0, "Pasting A1:A2 to A3:A100001");
ScDocument* pRedoDoc = new ScDocument(SCDOCMODE_UNDO);
pRedoDoc->InitUndo(m_pDoc, 0, 0);
@@ -689,10 +681,10 @@ void Test::testPerf()
CPPUNIT_ASSERT_EQUAL(CELLTYPE_NONE, m_pDoc->GetCellType(aTmp));
{
- MeasureTimeSwitch aTime(diff, scale);
+ MeasureTimeSwitch aTime(diff);
aUndo.Undo();
}
- PERF_ASSERT(diff, 500.0, "Undoing");
+ PERF_ASSERT(diff, scale, 500.0, "Undoing");
// Make sure it's really undone.
CPPUNIT_ASSERT_EQUAL(CELLTYPE_VALUE, m_pDoc->GetCellType(aPos));
@@ -701,10 +693,10 @@ void Test::testPerf()
// Now redo.
{
- MeasureTimeSwitch aTime(diff, scale);
+ MeasureTimeSwitch aTime(diff);
aUndo.Redo();
}
- PERF_ASSERT(diff, 800.0, "Redoing");
+ PERF_ASSERT(diff, scale, 800.0, "Redoing");
// Make sure it's really redone.
CPPUNIT_ASSERT_EQUAL(m_pDoc->GetString(aPos), m_pDoc->GetString(aPasteRange.aStart));
@@ -745,10 +737,10 @@ void Test::testPerf()
aMark.SetMarkArea(aPasteRange);
{
- MeasureTimeSwitch aTime(diff, scale);
+ MeasureTimeSwitch aTime(diff);
m_pDoc->CopyFromClip(aPasteRange, aMark, IDF_CONTENTS, pUndoDoc, &aClipDoc);
}
- PERF_ASSERT(diff, 2000.0, "Pasting");
+ PERF_ASSERT(diff, scale, 2000.0, "Pasting");
ScDocument* pRedoDoc = new ScDocument(SCDOCMODE_UNDO);
pRedoDoc->InitUndo(m_pDoc, 0, 0);
@@ -767,10 +759,10 @@ void Test::testPerf()
#if 0 // TODO: Undo and redo of this scenario is currently not fast enough to be tested reliably.
{
- MeasureTimeSwitch aTime(diff, scale);
+ MeasureTimeSwitch aTime(diff);
aUndo.Undo();
}
- PERF_ASSERT(diff, 1.0, "Undoing");
+ PERF_ASSERT(diff, scale, 1.0, "Undoing");
// Make sure it's really undone.
CPPUNIT_ASSERT_EQUAL(CELLTYPE_FORMULA, m_pDoc->GetCellType(aPos));
@@ -779,10 +771,10 @@ void Test::testPerf()
// Now redo.
{
- MeasureTimeSwitch aTime(diff, scale);
+ MeasureTimeSwitch aTime(diff);
aUndo.Redo();
}
- PERF_ASSERT(diff, 1.0, "Redoing");
+ PERF_ASSERT(diff, scale, 1.0, "Redoing");
// Make sure it's really redone.
CPPUNIT_ASSERT_EQUAL(CELLTYPE_FORMULA, m_pDoc->GetCellType(aPasteRange.aStart));
commit 6958b6a3ce9f28bed2a529939e7740452929a5b3
Author: Kohei Yoshida <kohei.yoshida at gmail.com>
Date: Wed May 22 11:17:52 2013 -0400
Use the block position of the destination, not of the source.
And a test to catch this.
Change-Id: Ia73be239b4be96cbe029390efbbec5f49e429652
diff --git a/sc/qa/unit/ucalc.cxx b/sc/qa/unit/ucalc.cxx
index 36a59fa..90da5f0 100644
--- a/sc/qa/unit/ucalc.cxx
+++ b/sc/qa/unit/ucalc.cxx
@@ -4494,6 +4494,7 @@ void Test::testPivotTableDocFunc()
void Test::testSheetCopy()
{
m_pDoc->InsertTab(0, "TestTab");
+ m_pDoc->SetString(ScAddress(0,0,0), "copy me");
CPPUNIT_ASSERT_MESSAGE("document should have one sheet to begin with.", m_pDoc->GetTableCount() == 1);
SCROW nRow1, nRow2;
bool bHidden = m_pDoc->RowHidden(0, 0, &nRow1, &nRow2);
diff --git a/sc/source/core/data/column.cxx b/sc/source/core/data/column.cxx
index 10d36b6..dfbc21d 100644
--- a/sc/source/core/data/column.cxx
+++ b/sc/source/core/data/column.cxx
@@ -1444,7 +1444,7 @@ void ScColumn::CopyToColumn(
// Special case to allow removing of cell instances. A
// string cell with empty content is used to indicate an
// empty cell.
- sc::ColumnBlockPosition* p = rCxt.getBlockPosition(nTab, nCol);
+ sc::ColumnBlockPosition* p = rCxt.getBlockPosition(rColumn.nTab, rColumn.nCol);
if (pNew->GetCellType() == CELLTYPE_STRING)
{
OUString aStr = static_cast<ScStringCell*>(pNew)->GetString();
commit ba9613715288f3907185133892d1dbbaa9e006a9
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Wed May 22 16:59:04 2013 +0200
Minor simplification
Change-Id: I8425971ed81b4f13be5e295a5a5b9ef443b9a4db
diff --git a/chart2/source/inc/macros.hxx b/chart2/source/inc/macros.hxx
index 89a0e56..874a4dd 100644
--- a/chart2/source/inc/macros.hxx
+++ b/chart2/source/inc/macros.hxx
@@ -19,22 +19,17 @@
#ifndef CHART_MACROS_HXX
#define CHART_MACROS_HXX
+#include "sal/config.h"
+
#include <typeinfo>
-/** shows an error-box for an exception ex
- else-branch necessary to avoid warning
-*/
-#if OSL_DEBUG_LEVEL > 0
+#include "sal/log.hxx"
+
#define ASSERT_EXCEPTION(ex) \
SAL_WARN("chart2", "Exception caught. Type: " <<\
typeid( ex ).name() << ", Message: " << \
ex.Message )
-#else
-//avoid compilation warnings
-#define ASSERT_EXCEPTION(ex) (void)(ex)
-#endif
-// CHART_MACROS_HXX
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit ea2f06d7884f2b765394bff8a1e935f67f6c961d
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Wed May 22 16:19:33 2013 +0200
Ensure SolarMutex is locked at DBG_TESTSOLARMUTEX checkpoints
f218110744cbb2ec79796d886042546e47334cca "Get rid of
GlobalEditData::GetStdRefDevice()" causes DBG_TESTSOLARMUTEX failures like
13 <signal handler called>
14 0x000000396e035ba5 in raise () from /lib64/libc.so.6
15 0x000000396e037358 in abort () from /lib64/libc.so.6
16 0x000000396e02e972 in __assert_fail_base () from /lib64/libc.so.6
17 0x000000396e02ea22 in __assert_fail () from /lib64/libc.so.6
18 0x00002aaaaee6e42f in ImplDbgTestSolarMutex () at vcl/source/app/dbggui.cxx:1750
19 0x00002aaaae21cf1b in DbgFunc (nAction=15, pParam=0x0) at tools/source/debug/debug.cxx:1118
20 0x00002aaaaf12bbb5 in DbgTestSolarMutex () at include/tools/debug.hxx:295
21 0x00002aaaaf151d4f in OutputDevice::ImplGetGraphics (this=0x2aab342127c0) at vcl/source/gdi/outdev.cxx:554
22 0x00002aaaaf1562e9 in OutputDevice::DrawRect (this=0x2aab342127c0, rRect=Rectangle = {...}) at vcl/source/gdi/outdev.cxx:1665
23 0x00002aaaaf14dc53 in OutputDevice::ImplDrawColorWallpaper (this=0x2aab342127c0, nX=0, nY=0, nWidth=1, nHeight=1, rWallpaper=...) at vcl/source/gdi/outdev6.cxx:775
24 0x00002aaaaf14f68c in OutputDevice::ImplDrawWallpaper (this=0x2aab342127c0, nX=0, nY=0, nWidth=1, nHeight=1, rWallpaper=...) at vcl/source/gdi/outdev6.cxx:1080
25 0x00002aaaaf14fa4c in OutputDevice::Erase (this=0x2aab342127c0) at vcl/source/gdi/outdev6.cxx:1141
26 0x00002aaaaf2a8802 in VirtualDevice::ImplInitVirDev (this=0x2aab342127c0, pOutDev=0x2d93230, nDX=1, nDY=1, nBitCount=0, pData=0x0) at vcl/source/gdi/virdev.cxx:113
27 0x00002aaaaf2a8a6e in VirtualDevice::VirtualDevice (this=0x2aab342127c0, nBitCount=0) at vcl/source/gdi/virdev.cxx:135
28 0x00002aaacee3e6a1 in ImpEditEngine::SetRefDevice (this=0x2aab34212040, pRef=0x0) at editeng/source/editeng/impedit2.cxx:193
29 0x00002aaacee3ddf7 in ImpEditEngine::ImpEditEngine (this=0x2aab34212040, pEE=0x2aab34211fe0, pItemPool=0x2aab34210780) at editeng/source/editeng/impedit2.cxx:154
30 0x00002aaacedeec95 in EditEngine::EditEngine (this=0x2aab34211fe0, pItemPool=0x2aab34210780) at editeng/source/editeng/editeng.cxx:104
31 0x00002aaaf63acf10 in frm::RichTextEngine::RichTextEngine (this=0x2aab34211fe0, _pPool=0x2aab34210780) at forms/source/richtext/richtextengine.cxx:102
32 0x00002aaaf63ac8ea in frm::RichTextEngine::Create () at forms/source/richtext/richtextengine.cxx:52
33 0x00002aaaf63bd661 in frm::ORichTextModel::ORichTextModel (this=0x2aab394e5728, _rxFactory=uno::Reference to (cppuhelper::ServiceManager *) 0x2aaabc565260) at forms/source/richtext/richtextmodel.cxx:68
34 0x00002aaaf63c00e3 in frm::ORichTextModel::Create (_rxFactory=uno::Reference to (cppuhelper::ServiceManager *) 0x2aaabc565260) at forms/source/richtext/richtextmodel.cxx:242
35 0x00002aaaab81054e in cppu::OSingleFactoryHelper::createInstanceEveryTime (this=0x2aaaf5d3d070, xContext=uno::Reference to (cppu::ComponentContext *) 0x2aaabc54ef58) at cppuhelper/source/factory.cxx:171
36 0x00002aaaab810765 in cppu::OSingleFactoryHelper::createInstanceWithContext (this=0x2aaaf5d3d070, xContext=uno::Reference to (cppu::ComponentContext *) 0x2aaabc54ef58) at cppuhelper/source/factory.cxx:203
37 0x00002aaaab8111bf in cppu::OFactoryComponentHelper::createInstanceWithContext (this=0x2aaaf5d3d008, xContext=uno::Reference to (cppu::ComponentContext *) 0x2aaabc54ef58) at cppuhelper/source/factory.cxx:432
38 0x00002aaaab865ee6 in cppuhelper::ServiceManager::createInstanceWithContext (this=0x2aaabc565208, aServiceSpecifier="com.sun.star.form.component.RichTextControl", Context=uno::Reference to (cppu::ComponentContext *) 0x2aaabc54ef58) at cppuhelper/source/servicemanager.cxx:796
39 0x00002aaaab865990 in cppuhelper::ServiceManager::createInstance (this=0x2aaabc565208, aServiceSpecifier="com.sun.star.form.component.RichTextControl") at cppuhelper/source/servicemanager.cxx:745
40 0x00002aaaf62db43d in frm::OControlModel::OControlModel (this=0x2aaaf5a5e408, _rxFactory=uno::Reference to (cppuhelper::ServiceManager *) 0x2aaabc565260, _rUnoControlModelTypeName="com.sun.star.form.component.RichTextControl", rDefault="com.sun.star.form.control.TextField", _bSetDelegator=0 '\000') at forms/source/component/FormComponent.cxx:598
41 0x00002aaaf62def21 in frm::OBoundControlModel::OBoundControlModel (this=0x2aaaf5a5e408, _rxFactory=uno::Reference to (cppuhelper::ServiceManager *) 0x2aaabc565260, _rUnoControlModelTypeName="com.sun.star.form.component.RichTextControl", _rDefault="com.sun.star.form.control.TextField", _bCommitable=1 '\001', _bSupportExternalBinding=1 '\001', _bSupportsValidation=1 '\001') at forms/source/component/FormComponent.cxx:1257
42 0x00002aaaf62a212c in frm::OEditBaseModel::OEditBaseModel (this=0x2aaaf5a5e408, _rxFactory=uno::Reference to (cppuhelper::ServiceManager *) 0x2aaabc565260, rUnoControlModelName="com.sun.star.form.component.RichTextControl", rDefault="com.sun.star.form.control.TextField", _bSupportExternalBinding=1 '\001', _bSupportsValidation=1 '\001') at forms/source/component/EditBase.cxx:56
43 0x00002aaaf62a54e2 in frm::OEditModel::OEditModel (this=0x2aaaf5a5e408, _rxFactory=uno::Reference to (cppuhelper::ServiceManager *) 0x2aaabc565260) at forms/source/component/Edit.cxx:294
44 0x00002aaaf62d6a40 in frm::OFormattedFieldWrapper::read (this=0x2aaadbee2940, _rxInStream=uno::Reference to (io_stm::OObjectInputStream *) 0x2aab393d0070) at forms/source/component/FormattedFieldWrapper.cxx:303
45 0x00002aaabcba47e6 in gcc3::callVirtualMethod(void*, unsigned int, void*, _typelib_TypeDescriptionReference*, bool, unsigned long*, unsigned int, unsigned long*, unsigned int, double*, unsigned int) () from solver/unxlngx6/installation/opt/ure/lib/libgcc3_uno.so
46 0x00002aaabcba36c0 in cpp_call (pThis=0x2aaad40cee90, aVtableSlot=..., pReturnTypeRef=0x2474360, nParams=1, pParams=0x2aaad0009000, pUnoReturn=0x0, pUnoArgs=0x2aab3420ff10, ppUnoExc=0x2aab26a4e6a8) at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:237
47 0x00002aaabcba4203 in bridges::cpp_uno::shared::unoInterfaceProxyDispatch (pUnoI=0x2aaad40cee90, pMemberDescr=0x2aaad0012980, pReturn=0x0, pArgs=0x2aab3420ff10, ppException=0x2aab26a4e6a8) at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:430
48 0x00002aaabe26515f in binaryurp::IncomingRequest::execute_throw (this=0x2aaad000b9a0, returnValue=0x2aab26a4eb10, outArguments=0x2aab26a4ea80) at binaryurp/source/incomingrequest.cxx:245
49 0x00002aaabe26402f in binaryurp::IncomingRequest::execute (this=0x2aaad000b9a0) at binaryurp/source/incomingrequest.cxx:74
50 0x00002aaabe27f3f1 in binaryurp::(anonymous namespace)::request (pThreadSpecificData=0x2aaad000b9a0) at binaryurp/source/reader.cxx:87
51 0x00002aaaab539286 in cppu_threadpool::JobQueue::enter (this=0x2aaad00098b0, nDisposeId=46913122473968, bReturnWhenNoJob=1 '\001') at cppu/source/threadpool/jobqueue.cxx:115
52 0x00002aaaab53cb7d in cppu_threadpool::ORequestThread::run (this=0x2aaad00017f0) at cppu/source/threadpool/thread.cxx:172
53 0x00002aaaab53d363 in osl::threadFunc (param=0x2aaad0001800) at include/osl/thread.hxx:187
54 0x00002aaaaaac85fb in osl_thread_start_Impl (pData=0x2aaad0007050) at sal/osl/unx/thread.c:251
55 0x000000396e407d15 in start_thread () from /lib64/libpthread.so.0
56 0x000000396e0f248d in clone () from /lib64/libc.so.6
(encountered with JunitTest_forms_unoapi) or
13 <signal handler called>
14 0x000000396e035ba5 in raise () from /lib64/libc.so.6
15 0x000000396e037358 in abort () from /lib64/libc.so.6
16 0x000000396e02e972 in __assert_fail_base () from /lib64/libc.so.6
17 0x000000396e02ea22 in __assert_fail () from /lib64/libc.so.6
18 0x00002aaaaee6e42f in ImplDbgTestSolarMutex () at vcl/source/app/dbggui.cxx:1750
19 0x00002aaaae21cf1b in DbgFunc (nAction=15, pParam=0x0) at tools/source/debug/debug.cxx:1118
20 0x00002aaaaf12bbb5 in DbgTestSolarMutex () at include/tools/debug.hxx:295
21 0x00002aaaaf152433 in OutputDevice::ImplReleaseGraphics (this=0x2aab20eef8b0, bRelease=1 '\001') at vcl/source/gdi/outdev.cxx:704
22 0x00002aaaaf2a9047 in VirtualDevice::~VirtualDevice (this=0x2aab20eef8b0, __in_chrg=<optimized out>) at vcl/source/gdi/virdev.cxx:187
23 0x00002aaaaf2a919c in VirtualDevice::~VirtualDevice (this=0x2aab20eef8b0, __in_chrg=<optimized out>) at vcl/source/gdi/virdev.cxx:202
24 0x00002aaacecbb264 in ImpEditEngine::~ImpEditEngine (this=0x2aab20eef130, __in_chrg=<optimized out>) at editeng/source/editeng/impedit2.cxx:182
25 0x00002aaacecbb614 in ImpEditEngine::~ImpEditEngine (this=0x2aab20eef130, __in_chrg=<optimized out>) at editeng/source/editeng/impedit2.cxx:184
26 0x00002aaacec6bd51 in EditEngine::~EditEngine (this=0x2aab20eef0d0, __in_chrg=<optimized out>) at editeng/source/editeng/editeng.cxx:110
27 0x00002aab34256039 in frm::RichTextEngine::~RichTextEngine (this=0x2aab20eef0d0, __in_chrg=<optimized out>) at forms/source/richtext/richtextengine.cxx:108
28 0x00002aab3425609c in frm::RichTextEngine::~RichTextEngine (this=0x2aab20eef0d0, __in_chrg=<optimized out>) at forms/source/richtext/richtextengine.cxx:111
29 0x00002aab3426b3fe in std::auto_ptr<frm::RichTextEngine>::reset (this=0x2aaabd4cb210, __p=0x0) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/backward/auto_ptr.h:244
30 0x00002aab34268a64 in frm::ORichTextModel::~ORichTextModel (this=0x2aaabd4cae08, __in_chrg=<optimized out>) at forms/source/richtext/richtextmodel.cxx:219
31 0x00002aab34268d60 in frm::ORichTextModel::~ORichTextModel (this=0x2aaabd4cae08, __in_chrg=<optimized out>) at forms/source/richtext/richtextmodel.cxx:225
32 0x00002aaaab8bd763 in cppu::OWeakObject::release (this=0x2aaabd4cae08) at cppuhelper/source/weak.cxx:204
33 0x00002aaaab8bdc20 in cppu::OWeakAggObject::release (this=0x2aaabd4cae08) at cppuhelper/source/weak.cxx:274
34 0x00002aaaab805212 in cppu::OComponentHelper::release (this=0x2aaabd4cae08) at cppuhelper/source/component.cxx:113
35 0x00002aab340edb6c in frm::OControlModel::release (this=0x2aaabd4cae08) at forms/source/inc/FormComponent.hxx:408
36 0x00002aab3426ae18 in frm::ORichTextModel::release (this=0x2aaabd4cae08) at forms/source/richtext/richtextmodel.hxx:106
37 0x00002aaaab1d81cf in com::sun::star::uno::Reference<com::sun::star::beans::XPropertyState>::~Reference (this=0x2aaacfee10d0, __in_chrg=<optimized out>) at include/com/sun/star/uno/Reference.hxx:108
38 0x00002aaaab1d2e69 in comphelper::OPropertySetAggregationHelper::~OPropertySetAggregationHelper (this=0x2aaacfee1068, __in_chrg=<optimized out>) at comphelper/source/property/propagg.cxx:451
39 0x00002aab34184f55 in frm::OControlModel::~OControlModel (this=0x2aaacfee1008, __in_chrg=<optimized out>) at forms/source/component/FormComponent.cxx:669
40 0x00002aab34189425 in frm::OBoundControlModel::~OBoundControlModel (this=0x2aaacfee1008, __in_chrg=<optimized out>) at forms/source/component/FormComponent.cxx:1316
41 0x00002aab3414bac5 in frm::OEditBaseModel::~OEditBaseModel (this=0x2aaacfee1008, __in_chrg=<optimized out>) at forms/source/component/EditBase.cxx:75
42 0x00002aab3414ee79 in frm::OEditModel::~OEditModel (this=0x2aaacfee1008, __in_chrg=<optimized out>) at forms/source/component/Edit.cxx:318
43 0x00002aab3414eef8 in frm::OEditModel::~OEditModel (this=0x2aaacfee1008, __in_chrg=<optimized out>) at forms/source/component/Edit.cxx:327
44 0x00002aaaab8bd763 in cppu::OWeakObject::release (this=0x2aaacfee1008) at cppuhelper/source/weak.cxx:204
45 0x00002aaaab8bdc20 in cppu::OWeakAggObject::release (this=0x2aaacfee1008) at cppuhelper/source/weak.cxx:274
46 0x00002aaaab805212 in cppu::OComponentHelper::release (this=0x2aaacfee1008) at cppuhelper/source/component.cxx:113
47 0x00002aab340edb6c in frm::OControlModel::release (this=0x2aaacfee1008) at forms/source/inc/FormComponent.hxx:408
48 0x00002aab340f8a38 in frm::OBoundControlModel::release (this=0x2aaacfee1008) at forms/source/inc/FormComponent.hxx:1025
49 0x00002aaaab7ed45d in com::sun::star::uno::Reference<com::sun::star::uno::XInterface>::~Reference (this=0x7fff8d7a2cd0, __in_chrg=<optimized out>) at include/com/sun/star/uno/Reference.hxx:108
50 0x00002aaaab8051f3 in cppu::OComponentHelper::release (this=0x2aaacfee1008) at cppuhelper/source/component.cxx:107
51 0x00002aab340edb6c in frm::OControlModel::release (this=0x2aaacfee1008) at forms/source/inc/FormComponent.hxx:408
52 0x00002aab340f8a38 in frm::OBoundControlModel::release (this=0x2aaacfee1008) at forms/source/inc/FormComponent.hxx:1025
53 0x00002aaabcba6224 in bridges::cpp_uno::shared::freeUnoInterfaceProxy (pEnv=0x2aaac80009e0, pProxy=0x2aab20ef5470) at bridges/source/cpp_uno/shared/unointerfaceproxy.cxx:43
54 0x00002aaaab56f35c in (anonymous namespace)::s_stub_defenv_revokeInterface (pParam=0x7fff8d7a2f78) at cppu/source/uno/lbenv.cxx:390
55 0x00002aaaab56ad4f in s_environment_invoke_v (pCurrEnv=0x0, pTargetEnv=0x2aaac80009e0, pCallee=0x2aaaab56f008 <(anonymous namespace)::s_stub_defenv_revokeInterface(va_list*)>, pParam=0x7fff8d7a2f78) at cppu/source/uno/EnvStack.cxx:292
56 0x00002aaaab56adf8 in uno_Environment_invoke_v (pTargetEnv=0x2aaac80009e0, pCallee=0x2aaaab56f008 <(anonymous namespace)::s_stub_defenv_revokeInterface(va_list*)>, pParam=0x7fff8d7a2f78) at cppu/source/uno/EnvStack.cxx:311
57 0x00002aaaab56aeb8 in uno_Environment_invoke (pEnv=0x2aaac80009e0, pCallee=0x2aaaab56f008 <(anonymous namespace)::s_stub_defenv_revokeInterface(va_list*)>) at cppu/source/uno/EnvStack.cxx:320
58 0x00002aaaab56f704 in (anonymous namespace)::defenv_revokeInterface (pEnv=0x2aaac80009e0, pInterface=0x2aab20ef5470) at cppu/source/uno/lbenv.cxx:446
59 0x00002aaabcba634a in bridges::cpp_uno::shared::releaseProxy (pUnoI=0x2aab20ef5470) at bridges/source/cpp_uno/shared/unointerfaceproxy.cxx:85
60 0x00002aaabe24dbd3 in com::sun::star::uno::UnoInterfaceReference::~UnoInterfaceReference (this=0x2aaad011eac8, __in_chrg=<optimized out>) at include/uno/dispatcher.hxx:88
61 0x00002aaabe24edd8 in binaryurp::Bridge::SubStub::~SubStub (this=0x2aaad011eac8, __in_chrg=<optimized out>) at binaryurp/source/bridge.cxx:167
62 0x00002aaabe24eea3 in std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub>::~pair (this=0x2aaad011eac0, __in_chrg=<optimized out>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_pair.h:88
63 0x00002aaabe25a32e in std::_Rb_tree_node<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> >::~_Rb_tree_node (this=0x2aaad011eaa0, __in_chrg=<optimized out>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:130
64 0x00002aaabe25a34c in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > >::destroy<std::_Rb_tree_node<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > (this=0x2aaad011eb08, __p=0x2aaad011eaa0) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/ext/new_allocator.h:114
65 0x00002aaabe258ad9 in std::_Rb_tree<com::sun::star::uno::TypeDescription, std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub>, std::_Select1st<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> >, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > >::_M_destroy_node (this=0x2aaad011eb08, __p=0x2aaad011eaa0) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:419
66 0x00002aaabe2566d5 in std::_Rb_tree<com::sun::star::uno::TypeDescription, std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub>, std::_Select1st<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> >, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > >::_M_erase (this=0x2aaad011eb08, __x=0x2aaad011eaa0) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:1084
67 0x00002aaabe254656 in std::_Rb_tree<com::sun::star::uno::TypeDescription, std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub>, std::_Select1st<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> >, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > >::~_Rb_tree (this=0x2aaad011eb08, __in_chrg=<optimized out>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:646
68 0x00002aaabe2519d4 in std::__cxx1998::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > >::~map (this=0x2aaad011eb08, __in_chrg=<optimized out>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_map.h:90
69 0x00002aaabe251a70 in std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > >::~map (this=0x2aaad011eb08, __in_chrg=<optimized out>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/debug/map.h:107
70 0x00002aaabe24ef78 in std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >::~pair (this=0x2aaad011eb00, __in_chrg=<optimized out>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_pair.h:88
71 0x00002aaabe25a168 in std::_Rb_tree_node<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >::~_Rb_tree_node (this=0x2aaad011eae0, __in_chrg=<optimized out>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:130
72 0x00002aaabe25a186 in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::destroy<std::_Rb_tree_node<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > > (this=0x7fff8d7a3470, __p=0x2aaad011eae0) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/ext/new_allocator.h:114
73 0x00002aaabe2584ef in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_destroy_node (this=0x7fff8d7a3470, __p=0x2aaad011eae0) at /usr
/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:419
74 0x00002aaabe255bc1 in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_erase (this=0x7fff8d7a3470, __x=0x2aaad011eae0) at /usr/lib/gc
c/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:1084
75 0x00002aaabe255b9e in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_erase (this=0x7fff8d7a3470, __x=0x2aaad0012f10) at /usr/lib/gc
c/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:1082
76 0x00002aaabe255b9e in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_erase (this=0x7fff8d7a3470, __x=0x2aaad0012a60) at /usr/lib/gc
c/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:1082
77 0x00002aaabe255b9e in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_erase (this=0x7fff8d7a3470, __x=0x2aaad002ec50) at /usr/lib/gc
c/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:1082
78 0x00002aaabe255b9e in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::_M_erase (this=0x7fff8d7a3470, __x=0x2aaad001ca70) at /usr/lib/gc
c/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:1082
79 0x00002aaabe2537e8 in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > >, std::_Select1st<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::~_Rb_tree (this=0x7fff8d7a3470, __in_chrg=<optimized out>) at /us
r/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:646
80 0x00002aaabe25033a in std::__cxx1998::map<rtl::OUString, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::~map (this=0x7fff8d7a3470, __in_chrg=<optimized out>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_map.h:90
81 0x00002aaabe2503d6 in std::__debug::map<rtl::OUString, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, std::__debug::map<com::sun::star::uno::TypeDescription, binaryurp::Bridge::SubStub, std::less<com::sun::star::uno::TypeDescription>, std::allocator<std::pair<com::sun::star::uno::TypeDescription const, binaryurp::Bridge::SubStub> > > > > >::~map (this=0x7fff8d7a3470, __in_chrg=<optimized out>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/debug/map.h:107
82 0x00002aaabe2468ec in binaryurp::Bridge::terminate (this=0x2aaabd5aa670, final=true) at binaryurp/source/bridge.cxx:332
83 0x00002aaabe24af19 in binaryurp::Bridge::dispose (this=0x2aaabd5aa670) at binaryurp/source/bridge.cxx:920
84 0x00002aaabddfc85d in desktop::Acceptor::~Acceptor (this=0x2aaabd3ea6d0, __in_chrg=<optimized out>) at desktop/source/offacc/acceptor.cxx:88
85 0x00002aaabddfca52 in desktop::Acceptor::~Acceptor (this=0x2aaabd3ea6d0, __in_chrg=<optimized out>) at desktop/source/offacc/acceptor.cxx:90
86 0x00002aaaab8bd763 in cppu::OWeakObject::release (this=0x2aaabd3ea6d0) at cppuhelper/source/weak.cxx:204
87 0x00002aaabde05f7e in cppu::WeakImplHelper2<com::sun::star::lang::XServiceInfo, com::sun::star::lang::XInitialization>::release (this=0x2aaabd3ea6d0) at include/cppuhelper/implbase2.hxx:106
88 0x00002aaaaad7d4fb in com::sun::star::uno::Reference<com::sun::star::lang::XInitialization>::~Reference (this=0x16790f8, __in_chrg=<optimized out>) at include/com/sun/star/uno/Reference.hxx:108
89 0x00002aaaaad846f8 in std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> >::~pair (this=0x16790f0, __in_chrg=<optimized out>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_pair.h:88
90 0x00002aaaaad8834e in std::_Rb_tree_node<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > >::~_Rb_tree_node (this=0x16790d0, __in_chrg=<optimized out>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:130
91 0x00002aaaaad8836c in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > > >::destroy<std::_Rb_tree_node<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > > > (this=0x2aaaab039660 <rtl::Static<desktop::AcceptorMap, desktop::(anonymous namespace)::acceptorMap>::get()::instance>, __p=0x16790d0) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/ext/new_allocator.h:114
92 0x00002aaaaad87fdb in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> >, std::_Select1st<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > > >::_M_destroy_node (this=0x2aaaab039660 <rtl::Static<desktop::AcceptorMap, desktop::(anonymous namespace)::acceptorMap>::get()::instance>, __p=0x16790d0) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:419
93 0x00002aaaaad878a5 in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> >, std::_Select1st<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > > >::_M_erase (this=0x2aaaab039660 <rtl::Static<desktop::AcceptorMap, desktop::(anonymous namespace)::acceptorMap>::get()::instance>, __x=0x16790d0) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:1084
94 0x00002aaaaad87625 in std::_Rb_tree<rtl::OUString, std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> >, std::_Select1st<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > >, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > > >::clear (this=0x2aaaab039660 <rtl::Static<desktop::AcceptorMap, desktop::(anonymous namespace)::acceptorMap>::get()::instance>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_tree.h:816
95 0x00002aaaaad865b4 in std::__cxx1998::map<rtl::OUString, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization>, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > > >::clear (this=0x2aaaab039660 <rtl::Static<desktop::AcceptorMap, desktop::(anonymous namespace)::acceptorMap>::get()::instance>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/bits/stl_map.h:716
96 0x00002aaaaad85670 in std::__debug::map<rtl::OUString, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization>, std::less<rtl::OUString>, std::allocator<std::pair<rtl::OUString const, com::sun::star::uno::Reference<com::sun::star::lang::XInitialization> > > >::clear (this=0x2aaaab039660 <rtl::Static<desktop::AcceptorMap, desktop::(anonymous namespace)::acceptorMap>::get()::instance>) at /usr/lib/gcc/x86_64-redhat-linux/4.7.2/../../../../include/c++/4.7.2/debug/map.h:351
97 0x00002aaaaad83453 in desktop::Desktop::DeregisterServices (this=0x7fff8d7a43e0) at desktop/source/app/appinit.cxx:255
98 0x00002aaaaad643e3 in desktop::Desktop::doShutdown (this=0x7fff8d7a43e0) at desktop/source/app/app.cxx:1804
99 0x00002aaaaad63680 in desktop::Desktop::Main (this=0x7fff8d7a43e0) at desktop/source/app/app.cxx:1753
100 0x00002aaaaee9b0dd in ImplSVMain () at vcl/source/app/svmain.cxx:162
101 0x00002aaaaee9b1c6 in SVMain () at vcl/source/app/svmain.cxx:198
102 0x00002aaaaada6616 in soffice_main () at desktop/source/app/sofficemain.cxx:82
103 0x0000000000400968 in sal_main () at desktop/source/app/main.c:48
104 0x0000000000400949 in main (argc=9, argv=0x7fff8d7a45c8) at desktop/source/app/main.c:47
(encountered with JunitTest_sc_unoapi), and more, so lock the SolarMutex at the
"entrance" to the relevant stack traces.
Change-Id: I017acf2886b813adb4d44562c5f1e22dd24aa884
diff --git a/forms/source/component/FormattedFieldWrapper.cxx b/forms/source/component/FormattedFieldWrapper.cxx
index db2af5c..19f5dae 100644
--- a/forms/source/component/FormattedFieldWrapper.cxx
+++ b/forms/source/component/FormattedFieldWrapper.cxx
@@ -259,6 +259,7 @@ void SAL_CALL OFormattedFieldWrapper::write(const Reference<XObjectOutputStream>
//------------------------------------------------------------------
void SAL_CALL OFormattedFieldWrapper::read(const Reference<XObjectInputStream>& _rxInStream) throw( IOException, RuntimeException )
{
+ SolarMutexGuard g;
if (m_xAggregate.is())
{ // we alread did a decision if we're an EditModel or a FormattedModel
diff --git a/forms/source/component/Grid.cxx b/forms/source/component/Grid.cxx
index cfa4d1b..29f3b58 100644
--- a/forms/source/component/Grid.cxx
+++ b/forms/source/component/Grid.cxx
@@ -365,6 +365,7 @@ void OGridControlModel::removeSelectionChangeListener(const Reference< XSelectio
//------------------------------------------------------------------------------
Reference<XPropertySet> SAL_CALL OGridControlModel::createColumn(const OUString& ColumnType) throw ( :: com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
{
+ SolarMutexGuard g;
const Sequence< OUString >& rColumnTypes = frm::getColumnTypes();
return createColumn( ::detail::findPos( ColumnType, rColumnTypes ) );
}
@@ -994,6 +995,7 @@ void OGridControlModel::write(const Reference<XObjectOutputStream>& _rxOutStream
//------------------------------------------------------------------------------
void OGridControlModel::read(const Reference<XObjectInputStream>& _rxInStream) throw ( ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException)
{
+ SolarMutexGuard g;
OControlModel::read(_rxInStream);
Reference<XMarkableStream> xMark(_rxInStream, UNO_QUERY);
diff --git a/forms/source/richtext/richtextmodel.cxx b/forms/source/richtext/richtextmodel.cxx
index 15dc234..9d8c4aa 100644
--- a/forms/source/richtext/richtextmodel.cxx
+++ b/forms/source/richtext/richtextmodel.cxx
@@ -215,6 +215,7 @@ namespace frm
}
if ( m_pEngine.get() )
{
+ SolarMutexGuard g;
SfxItemPool* pPool = m_pEngine->getPool();
m_pEngine.reset();
SfxItemPool::Free(pPool);
commit 65da24773fffea4e4bc81adfa265378064186488
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Wed May 22 16:16:03 2013 +0200
Be more picky about Mac OS X linker warnings
...useful for cases like 913ba61d008c6629272ba3df8d22dbff0e2dc4f9 "Make liborcus
-fvisibility setting consistent with LO one."
Feel free to revert if it causes trouble, though. (I was only able to test it
with a 10.7 build, not a 10.6 baseline one.)
Change-Id: Ic8e57cd917ef186f4dec8d876fc8da6d6db57b3d
diff --git a/solenv/gbuild/platform/macosx.mk b/solenv/gbuild/platform/macosx.mk
index eb03018..1da614b 100644
--- a/solenv/gbuild/platform/macosx.mk
+++ b/solenv/gbuild/platform/macosx.mk
@@ -91,6 +91,7 @@ gb_OBJCXXFLAGS := -x objective-c++ -fobjc-exceptions
gb_OBJCFLAGS := -x objective-c -fobjc-exceptions
gb_LinkTarget_LDFLAGS := \
+ -Wl,-fatal_warnings \
$(SOLARLIB) \
#man ld says: obsolete -Wl,-multiply_defined,suppress \
commit 913ba61d008c6629272ba3df8d22dbff0e2dc4f9
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Wed May 22 16:09:33 2013 +0200
Make liborcus -fvisibility setting consistent with LO one
Esp. since LO links against a liborcus.a, this would otherwise cause linker
warnings like
ld: warning: direct access in orcus::orcus_xml::read_file(char const*) to
global weak symbol boost::unordered_detail::prime_list_template<unsigned
long>::value means the weak symbol cannot be overridden at runtime. This was
likely caused by different translation units being compiled with different
visibility settings.
on Mac OS X (where HAVE_GCC_VISIBILITY_FEATURE is unset).
Change-Id: I6f09b61aa77b6d5c3f8b53407d8faff4fb3bb8a1
diff --git a/liborcus/UnpackedTarball_liborcus.mk b/liborcus/UnpackedTarball_liborcus.mk
index e43144d..cb61573 100644
--- a/liborcus/UnpackedTarball_liborcus.mk
+++ b/liborcus/UnpackedTarball_liborcus.mk
@@ -26,6 +26,10 @@ ifeq ($(OS),MACOSX)
liborcus_patches += liborcus_0.1.0-tac.patch
endif
+ifneq ($(HAVE_GCC_VISIBILITY_FEATURE),TRUE)
+liborcus_patches += visibility.patch
+endif
+
# <https://gitorious.org/orcus/orcus/merge_requests/2#
# f60d6eecee72349993a392a9a63ddf3383d3b8c8-
# f60d6eecee72349993a392a9a63ddf3383d3b8c8 at 2>:
diff --git a/liborcus/visibility.patch b/liborcus/visibility.patch
new file mode 100644
index 0000000..a5af639
--- /dev/null
+++ b/liborcus/visibility.patch
@@ -0,0 +1,11 @@
+--- configure
++++ configure
+@@ -3211,7 +3211,7 @@
+ ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+
+-CXXFLAGS="$CXXFLAGS -O2 -fvisibility=hidden -Wall"
++CXXFLAGS="$CXXFLAGS -O2 -Wall"
+
+ # ===========================
+ # Find required base packages
commit d003010030b0ca5b828d1c6bf02be6dd350375f2
Author: Andras Timar <atimar at suse.com>
Date: Wed May 22 14:50:18 2013 +0200
Updated core
Project: dictionaries 5f7183ff8e2358287bd99b64d7036475f1f0ff6a
diff --git a/dictionaries b/dictionaries
index 09bd32f7..5f7183f 160000
--- a/dictionaries
+++ b/dictionaries
@@ -1 +1 @@
-Subproject commit 09bd32f75110b15e6be8a7bfc116535cead5682b
+Subproject commit 5f7183ff8e2358287bd99b64d7036475f1f0ff6a
commit 9fa7dd98ccf91a2862f4c61d5d94aff2a1bbe4bf
Author: Noel Grandin <noel at peralex.com>
Date: Wed May 22 15:46:15 2013 +0200
fix Mac build
Change-Id: I7870cabf5a241d5255f0b2a6cf995c17b664fd27
diff --git a/framework/source/dispatch/closedispatcher.cxx b/framework/source/dispatch/closedispatcher.cxx
index 2ff7916..6a87dfb 100644
--- a/framework/source/dispatch/closedispatcher.cxx
+++ b/framework/source/dispatch/closedispatcher.cxx
@@ -388,7 +388,7 @@ IMPL_LINK_NOARG(CloseDispatcher, impl_asyncCallback)
// get quickstart service
try
{
- css::uno::Reference< css::beans::XFastPropertySet > xSet( xSMGR->createInstance(IMPLEMENTATIONNAME_QUICKLAUNCHER), css::uno::UNO_QUERY_THROW );
+ css::uno::Reference< css::beans::XFastPropertySet > xSet( xContext->getServiceManager()->createInstanceWithContext(IMPLEMENTATIONNAME_QUICKLAUNCHER, xContext), css::uno::UNO_QUERY_THROW );
if( xSet.is() )
{
css::uno::Any aVal( xSet->getFastPropertyValue( 0 ) );
commit a726677724a5a8dd6ae39d5a7a829c2ed62f3efd
Author: Noel Grandin <noel at peralex.com>
Date: Wed May 22 11:08:43 2013 +0200
fdo#46808, Convert XMultiServiceFactory to XComponentContext
Change-Id: Ib5e6fb4d6a4ff8f2bd315f19bde5028be2c569ea
diff --git a/framework/inc/uielement/genericstatusbarcontroller.hxx b/framework/inc/uielement/genericstatusbarcontroller.hxx
index bc4a71d..59548a2 100644
--- a/framework/inc/uielement/genericstatusbarcontroller.hxx
+++ b/framework/inc/uielement/genericstatusbarcontroller.hxx
@@ -30,7 +30,7 @@ struct AddonStatusbarItemData;
class GenericStatusbarController : public svt::StatusbarController
{
public:
- GenericStatusbarController( const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory >& rServiceManager,
+ GenericStatusbarController( const com::sun::star::uno::Reference< com::sun::star::uno::XComponentContext >& rxContext,
const com::sun::star::uno::Reference< com::sun::star::frame::XFrame >& rFrame,
const com::sun::star::uno::Reference< com::sun::star::ui::XStatusbarItem >& rxItem,
AddonStatusbarItemData *pItemData );
diff --git a/framework/inc/uielement/langselectionstatusbarcontroller.hxx b/framework/inc/uielement/langselectionstatusbarcontroller.hxx
index 71896ef..0f7a77d 100644
--- a/framework/inc/uielement/langselectionstatusbarcontroller.hxx
+++ b/framework/inc/uielement/langselectionstatusbarcontroller.hxx
@@ -42,7 +42,7 @@ namespace framework {
class LangSelectionStatusbarController : public svt::StatusbarController
{
public:
- explicit LangSelectionStatusbarController( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager );
+ explicit LangSelectionStatusbarController( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& xContext );
// XServiceInfo
DECLARE_XSERVICEINFO
diff --git a/framework/source/uielement/addonstoolbarmanager.cxx b/framework/source/uielement/addonstoolbarmanager.cxx
index 0bde95d..6723b95 100644
--- a/framework/source/uielement/addonstoolbarmanager.cxx
+++ b/framework/source/uielement/addonstoolbarmanager.cxx
@@ -41,6 +41,7 @@
#include <com/sun/star/frame/XToolbarController.hpp>
#include <com/sun/star/frame/XDispatchProvider.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/frame/XLayoutManager.hpp>
#include <com/sun/star/ui/DockingArea.hpp>
#include <com/sun/star/lang/XMultiComponentFactory.hpp>
diff --git a/framework/source/uielement/genericstatusbarcontroller.cxx b/framework/source/uielement/genericstatusbarcontroller.cxx
index 4b4d721..4140ab8 100644
--- a/framework/source/uielement/genericstatusbarcontroller.cxx
+++ b/framework/source/uielement/genericstatusbarcontroller.cxx
@@ -43,11 +43,11 @@ namespace framework
{
GenericStatusbarController::GenericStatusbarController(
- const Reference< XMultiServiceFactory >& rxServiceManager,
+ const Reference< XComponentContext >& rxContext,
const Reference< XFrame >& rxFrame,
const Reference< ui::XStatusbarItem >& rxItem,
AddonStatusbarItemData *pItemData )
- : svt::StatusbarController( rxServiceManager, rxFrame, OUString(), 0 )
+ : svt::StatusbarController( rxContext, rxFrame, OUString(), 0 )
, m_bEnabled( sal_False )
, m_bOwnerDraw( sal_False )
, m_pItemData( pItemData )
diff --git a/framework/source/uielement/langselectionstatusbarcontroller.cxx b/framework/source/uielement/langselectionstatusbarcontroller.cxx
index 09c0a3d..8773c81 100644
--- a/framework/source/uielement/langselectionstatusbarcontroller.cxx
+++ b/framework/source/uielement/langselectionstatusbarcontroller.cxx
@@ -44,8 +44,6 @@
#include <com/sun/star/frame/XFrame.hpp>
#include <com/sun/star/frame/XDispatch.hpp>
#include <com/sun/star/frame/XDispatchProvider.hpp>
-#include <com/sun/star/util/URLTransformer.hpp>
-#include <com/sun/star/util/XURLTransformer.hpp>
#include <comphelper/processfactory.hxx>
#include <toolkit/helper/vclunohelper.hxx>
@@ -75,7 +73,7 @@ using ::rtl::OUStringBuffer;
namespace framework
{
-DEFINE_XSERVICEINFO_MULTISERVICE ( LangSelectionStatusbarController ,
+DEFINE_XSERVICEINFO_MULTISERVICE_2 ( LangSelectionStatusbarController ,
OWeakObject ,
SERVICENAME_STATUSBARCONTROLLER ,
IMPLEMENTATIONNAME_LANGSELECTIONSTATUSBARCONTROLLER
@@ -83,11 +81,11 @@ DEFINE_XSERVICEINFO_MULTISERVICE ( LangSelectionStatusbarController
DEFINE_INIT_SERVICE ( LangSelectionStatusbarController, {} )
-LangSelectionStatusbarController::LangSelectionStatusbarController( const uno::Reference< lang::XMultiServiceFactory >& xServiceManager ) :
- svt::StatusbarController( xServiceManager, uno::Reference< frame::XFrame >(), OUString(), 0 ),
+LangSelectionStatusbarController::LangSelectionStatusbarController( const uno::Reference< uno::XComponentContext >& xContext ) :
+ svt::StatusbarController( xContext, uno::Reference< frame::XFrame >(), OUString(), 0 ),
m_bShowMenu( sal_True ),
m_nScriptType( LS_SCRIPT_LATIN | LS_SCRIPT_ASIAN | LS_SCRIPT_COMPLEX ),
- m_aLangGuessHelper( comphelper::getComponentContext(xServiceManager) )
+ m_aLangGuessHelper( xContext )
{
}
@@ -114,9 +112,9 @@ throw (::com::sun::star::uno::RuntimeException)
return;
//add context menu
- Reference< awt::XPopupMenu > xPopupMenu( awt::PopupMenu::create( comphelper::getComponentContext(m_xServiceManager) ) );
+ Reference< awt::XPopupMenu > xPopupMenu( awt::PopupMenu::create( m_xContext ) );
//sub menu that contains all items except the last two items: Separator + Set Language for Paragraph
- Reference< awt::XPopupMenu > subPopupMenu( awt::PopupMenu::create( comphelper::getComponentContext(m_xServiceManager) ) );
+ Reference< awt::XPopupMenu > subPopupMenu( awt::PopupMenu::create( m_xContext ) );
SvtLanguageTable aLanguageTable;
diff --git a/framework/source/uielement/statusbarmanager.cxx b/framework/source/uielement/statusbarmanager.cxx
index b6ba246..2b096a5 100644
--- a/framework/source/uielement/statusbarmanager.cxx
+++ b/framework/source/uielement/statusbarmanager.cxx
@@ -421,7 +421,7 @@ void StatusBarManager::CreateControllers()
// 3º) Is Add-on? Generic statusbar controller
if ( pItemData )
{
- pController = new GenericStatusbarController( uno::Reference<lang::XMultiServiceFactory>(m_xContext->getServiceManager(), uno::UNO_QUERY_THROW),
+ pController = new GenericStatusbarController( m_xContext,
m_xFrame,
xStatusbarItem,
pItemData );
@@ -429,7 +429,7 @@ void StatusBarManager::CreateControllers()
else
{
// 4º) Default Statusbar controller
- pController = new svt::StatusbarController( uno::Reference<lang::XMultiServiceFactory>(m_xContext->getServiceManager(), uno::UNO_QUERY_THROW), m_xFrame, aCommandURL, nId );
+ pController = new svt::StatusbarController( m_xContext, m_xFrame, aCommandURL, nId );
}
}
diff --git a/framework/source/uielement/toolbarmanager.cxx b/framework/source/uielement/toolbarmanager.cxx
index fdbb17b..2ddcda5 100644
--- a/framework/source/uielement/toolbarmanager.cxx
+++ b/framework/source/uielement/toolbarmanager.cxx
@@ -40,6 +40,7 @@
#include <com/sun/star/ui/DockingArea.hpp>
#include <com/sun/star/graphic/XGraphic.hpp>
#include <com/sun/star/lang/XMultiComponentFactory.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/frame/ToolbarControllerFactory.hpp>
#include <com/sun/star/ui/GlobalAcceleratorConfiguration.hpp>
diff --git a/include/svtools/statusbarcontroller.hxx b/include/svtools/statusbarcontroller.hxx
index 9d094fa..3b0f5bd 100644
--- a/include/svtools/statusbarcontroller.hxx
+++ b/include/svtools/statusbarcontroller.hxx
@@ -21,13 +21,13 @@
#define _SVTOOLS_STATUSBARCONTROLLER_HXX
#include "svtools/svtdllapi.h"
-#include <com/sun/star/ui/XStatusbarItem.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/frame/XFrame.hpp>
#include <com/sun/star/frame/XDispatch.hpp>
#include <com/sun/star/frame/XStatusbarController.hpp>
-#include <com/sun/star/util/XURLTransformer.hpp>
#include <com/sun/star/frame/XLayoutManager.hpp>
+#include <com/sun/star/ui/XStatusbarItem.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
+#include <com/sun/star/util/XURLTransformer.hpp>
#include <cppuhelper/weak.hxx>
#include <cppuhelper/interfacecontainer.hxx>
#include <comphelper/broadcasthelper.hxx>
@@ -46,7 +46,7 @@ class SVT_DLLPUBLIC StatusbarController :
public ::cppu::OWeakObject
{
public:
- StatusbarController( const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory >& rServiceManager,
+ StatusbarController( const com::sun::star::uno::Reference< com::sun::star::uno::XComponentContext >& rxContext,
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& xFrame,
const OUString& aCommandURL,
unsigned short nID );
@@ -123,7 +123,7 @@ class SVT_DLLPUBLIC StatusbarController :
unsigned short m_nID;
::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame > m_xFrame;
::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow > m_xParentWindow;
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > m_xContext;
OUString m_aCommandURL;
URLToDispatchMap m_aListenerMap;
::cppu::OMultiTypeInterfaceContainerHelper m_aListenerContainer; /// container for ALL Listener
diff --git a/reportdesign/source/ui/inc/statusbarcontroller.hxx b/reportdesign/source/ui/inc/statusbarcontroller.hxx
index 6e6fda9..91ff232 100644
--- a/reportdesign/source/ui/inc/statusbarcontroller.hxx
+++ b/reportdesign/source/ui/inc/statusbarcontroller.hxx
@@ -37,7 +37,7 @@ namespace rptui
sal_uInt16 m_nSlotId;
sal_uInt16 m_nId;
public:
- OStatusbarController(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB);
+ OStatusbarController(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& _rxORB);
static OUString getImplementationName_Static() throw( ::com::sun::star::uno::RuntimeException );
static ::com::sun::star::uno::Sequence< OUString > getSupportedServiceNames_Static(void) throw( ::com::sun::star::uno::RuntimeException );
diff --git a/reportdesign/source/ui/misc/statusbarcontroller.cxx b/reportdesign/source/ui/misc/statusbarcontroller.cxx
index 9bb946e..4294d5b 100644
--- a/reportdesign/source/ui/misc/statusbarcontroller.cxx
+++ b/reportdesign/source/ui/misc/statusbarcontroller.cxx
@@ -69,15 +69,15 @@ Sequence< OUString> SAL_CALL OStatusbarController::getSupportedServiceNames() th
// -------------------------------------------------------------------------
Reference< XInterface > OStatusbarController::create(Reference< XComponentContext > const & xContext)
{
- return *(new OStatusbarController(Reference< XMultiServiceFactory >(xContext->getServiceManager(),UNO_QUERY)));
+ return *(new OStatusbarController(xContext));
}
IMPLEMENT_FORWARD_XINTERFACE2(OStatusbarController, ::svt::StatusbarController,OStatusbarController_BASE)
-OStatusbarController::OStatusbarController(const Reference< XMultiServiceFactory >& _rxORB)
-: m_nSlotId(0)
+OStatusbarController::OStatusbarController(const Reference< XComponentContext >& rxContext)
+: ::svt::StatusbarController(rxContext, Reference< XFrame >(), OUString(), 0)
+,m_nSlotId(0)
,m_nId(1)
{
- m_xServiceManager = _rxORB;
}
// -----------------------------------------------------------------------------
void SAL_CALL OStatusbarController::initialize( const Sequence< Any >& _rArguments ) throw (Exception, RuntimeException)
diff --git a/svtools/source/uno/statusbarcontroller.cxx b/svtools/source/uno/statusbarcontroller.cxx
index d93feed..2f6fbba 100644
--- a/svtools/source/uno/statusbarcontroller.cxx
+++ b/svtools/source/uno/statusbarcontroller.cxx
@@ -22,6 +22,7 @@
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/frame/XDispatchProvider.hpp>
#include <com/sun/star/lang/DisposedException.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/frame/XLayoutManager.hpp>
#include <com/sun/star/util/URLTransformer.hpp>
#include <osl/mutex.hxx>
@@ -45,7 +46,7 @@ namespace svt
{
StatusbarController::StatusbarController(
- const Reference< XMultiServiceFactory >& rServiceManager,
+ const Reference< XComponentContext >& rxContext,
const Reference< XFrame >& xFrame,
const OUString& aCommandURL,
unsigned short nID ) :
@@ -54,7 +55,7 @@ StatusbarController::StatusbarController(
, m_bDisposed( sal_False )
, m_nID( nID )
, m_xFrame( xFrame )
- , m_xServiceManager( rServiceManager )
+ , m_xContext( rxContext )
, m_aCommandURL( aCommandURL )
, m_aListenerContainer( m_aMutex )
{
@@ -82,9 +83,9 @@ Reference< XFrame > StatusbarController::getFrameInterface() const
Reference< XURLTransformer > StatusbarController::getURLTransformer() const
{
SolarMutexGuard aSolarMutexGuard;
- if ( !m_xURLTransformer.is() && m_xServiceManager.is() )
+ if ( !m_xURLTransformer.is() && m_xContext.is() )
{
- m_xURLTransformer = com::sun::star::util::URLTransformer::create( ::comphelper::getComponentContext(m_xServiceManager) );
+ m_xURLTransformer = com::sun::star::util::URLTransformer::create( m_xContext );
}
return m_xURLTransformer;
@@ -148,7 +149,12 @@ throw ( Exception, RuntimeException )
else if ( aPropValue.Name == "CommandURL" )
aPropValue.Value >>= m_aCommandURL;
else if ( aPropValue.Name == "ServiceManager" )
- aPropValue.Value >>= m_xServiceManager;
+ {
+ Reference<XMultiServiceFactory> xMSF;
+ aPropValue.Value >>= xMSF;
+ if( xMSF.is() )
+ m_xContext = comphelper::getComponentContext(xMSF);
+ }
else if ( aPropValue.Name == "ParentWindow" )
aPropValue.Value >>= m_xParentWindow;
else if ( aPropValue.Name == "Identifier" )
@@ -219,7 +225,7 @@ throw (::com::sun::star::uno::RuntimeException)
// release references
m_xURLTransformer.clear();
- m_xServiceManager.clear();
+ m_xContext.clear();
m_xFrame.clear();
m_xParentWindow.clear();
m_xStatusbarItem.clear();
@@ -373,7 +379,7 @@ void StatusbarController::addStatusListener( const OUString& aCommandURL )
{
// Add status listener directly as intialize has already been called.
Reference< XDispatchProvider > xDispatchProvider( m_xFrame, UNO_QUERY );
- if ( m_xServiceManager.is() && xDispatchProvider.is() )
+ if ( m_xContext.is() && xDispatchProvider.is() )
{
Reference< XURLTransformer > xURLTransformer = getURLTransformer();
aTargetURL.Complete = aCommandURL;
@@ -426,7 +432,7 @@ void StatusbarController::bindListener()
// Collect all registered command URL's and store them temporary
Reference< XDispatchProvider > xDispatchProvider( m_xFrame, UNO_QUERY );
- if ( m_xServiceManager.is() && xDispatchProvider.is() )
+ if ( m_xContext.is() && xDispatchProvider.is() )
{
xStatusListener = Reference< XStatusListener >( static_cast< OWeakObject* >( this ), UNO_QUERY );
URLToDispatchMap::iterator pIter = m_aListenerMap.begin();
@@ -533,7 +539,7 @@ void StatusbarController::execute( const ::com::sun::star::uno::Sequence< ::com:
if ( m_bInitialized &&
m_xFrame.is() &&
- m_xServiceManager.is() &&
+ m_xContext.is() &&
!m_aCommandURL.isEmpty() )
{
xURLTransformer = getURLTransformer();
@@ -575,7 +581,7 @@ void StatusbarController::execute(
if ( m_bInitialized &&
m_xFrame.is() &&
- m_xServiceManager.is() &&
+ m_xContext.is() &&
!m_aCommandURL.isEmpty() )
{
Reference< XURLTransformer > xURLTransformer( getURLTransformer() );
commit fe1ac1bf904ec7905187c3c3a5fe6a90f31f94e7
Author: Noel Grandin <noel at peralex.com>
Date: Tue May 21 17:38:02 2013 +0200
fdo#46808, convert XMultiServiceFactory to XComponentContext
Change-Id: I5ed0b12bf37e7d235fc88182c006a6ed07ef2343
diff --git a/framework/inc/classes/droptargetlistener.hxx b/framework/inc/classes/droptargetlistener.hxx
index 0a71804..0a7e7d2 100644
--- a/framework/inc/classes/droptargetlistener.hxx
+++ b/framework/inc/classes/droptargetlistener.hxx
@@ -41,7 +41,7 @@ class DropTargetListener : private ThreadHelpBase
private:
/// uno service manager to create necessary services
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
/// weakreference to target frame (Don't use a hard reference. Owner can't delete us then!)
css::uno::WeakReference< css::frame::XFrame > m_xTargetFrame;
/// drag/drop info
@@ -51,7 +51,7 @@ class DropTargetListener : private ThreadHelpBase
// c++ interface
public:
- DropTargetListener( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory ,
+ DropTargetListener( const css::uno::Reference< css::uno::XComponentContext >& xContext ,
const css::uno::Reference< css::frame::XFrame >& xFrame );
~DropTargetListener( );
diff --git a/framework/inc/classes/propertysethelper.hxx b/framework/inc/classes/propertysethelper.hxx
index f414cf6..2bc4109 100644
--- a/framework/inc/classes/propertysethelper.hxx
+++ b/framework/inc/classes/propertysethelper.hxx
@@ -26,7 +26,6 @@
#include <general.h>
#include <stdtypes.h>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/beans/XPropertySetInfo.hpp>
#include <com/sun/star/beans/PropertyExistException.hpp>
@@ -62,8 +61,6 @@ class FWI_DLLPUBLIC PropertySetHelper : public css::beans::XPropertySet
/* member */
protected:
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR;
-
PropertySetHelper::TPropInfoHash m_lProps;
ListenerHash m_lSimpleChangeListener;
@@ -84,10 +81,6 @@ class FWI_DLLPUBLIC PropertySetHelper : public css::beans::XPropertySet
//---------------------------------------------------------------------
/** initialize new instance of this helper.
*
- * @param xSMGR
- * points to an uno service manager, which is used internaly to create own
- * needed uno services.
- *
* @param pExternalLock
* this helper must be used as a baseclass ...
* but then it should synchronize its own calls
@@ -101,8 +94,7 @@ class FWI_DLLPUBLIC PropertySetHelper : public css::beans::XPropertySet
* @param bReleaseLockOnCall
* see member m_bReleaseLockOnCall
*/
- PropertySetHelper(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- LockHelper* pExternalLock ,
+ PropertySetHelper( LockHelper* pExternalLock ,
TransactionManager* pExternalTransactionManager ,
sal_Bool bReleaseLockOnCall );
diff --git a/framework/inc/classes/taskcreator.hxx b/framework/inc/classes/taskcreator.hxx
index 44b5111..4a297f9 100644
--- a/framework/inc/classes/taskcreator.hxx
+++ b/framework/inc/classes/taskcreator.hxx
@@ -26,7 +26,7 @@
#include <general.h>
#include <com/sun/star/frame/XFramesSupplier.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/uno/Reference.hxx>
#include <rtl/ustring.hxx>
@@ -48,13 +48,13 @@ class TaskCreator : private ThreadHelpBase
// member
private:
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
//_______________________
// interface
public:
- TaskCreator( const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR );
+ TaskCreator( const css::uno::Reference< css::uno::XComponentContext >& xContext );
virtual ~TaskCreator( );
css::uno::Reference< css::frame::XFrame > createTask( const OUString& sName ,
diff --git a/framework/inc/dispatch/closedispatcher.hxx b/framework/inc/dispatch/closedispatcher.hxx
index 5b8860f..96ef71c 100644
--- a/framework/inc/dispatch/closedispatcher.hxx
+++ b/framework/inc/dispatch/closedispatcher.hxx
@@ -35,7 +35,7 @@
#include <com/sun/star/frame/XDispatchInformationProvider.hpp>
#include <com/sun/star/util/URL.hpp>
#include <com/sun/star/frame/XDispatchResultListener.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/frame/DispatchResultState.hpp>
#include <cppuhelper/weak.hxx>
@@ -89,7 +89,7 @@ class CloseDispatcher : public css::lang::XTypeProvider
/** @short reference to an uno service manager,
which can be used to create own needed
uno resources. */
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
//---------------------------------------
/** @short reference to the target frame, which should be
@@ -132,7 +132,7 @@ class CloseDispatcher : public css::lang::XTypeProvider
That makes an implementation (e.g. of listener support)
much more easier .-)
- @param xSMGR
+ @param rxContext
an un oservice manager, which is needed to create uno resource
internaly.
@@ -142,9 +142,9 @@ class CloseDispatcher : public css::lang::XTypeProvider
@param sTarget
help us to find the right target for this close operation.
*/
- CloseDispatcher(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- const css::uno::Reference< css::frame::XFrame >& xFrame ,
- const OUString& sTarget);
+ CloseDispatcher(const css::uno::Reference< css::uno::XComponentContext >& rxContext ,
+ const css::uno::Reference< css::frame::XFrame >& xFrame ,
+ const OUString& sTarget);
//---------------------------------------
/** @short does nothing real. */
diff --git a/framework/inc/dispatch/dispatchinformationprovider.hxx b/framework/inc/dispatch/dispatchinformationprovider.hxx
index f39c680..cac9572 100644
--- a/framework/inc/dispatch/dispatchinformationprovider.hxx
+++ b/framework/inc/dispatch/dispatchinformationprovider.hxx
@@ -48,15 +48,15 @@ class DispatchInformationProvider : public css::frame::XDispatchInformationProv
// member
private:
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
css::uno::WeakReference< css::frame::XFrame > m_xFrame;
//_______________________
// interface
public:
- DispatchInformationProvider(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- const css::uno::Reference< css::frame::XFrame >& xFrame);
+ DispatchInformationProvider(const css::uno::Reference< css::uno::XComponentContext >& xContext ,
+ const css::uno::Reference< css::frame::XFrame >& xFrame);
virtual ~DispatchInformationProvider();
diff --git a/framework/inc/dispatch/dispatchprovider.hxx b/framework/inc/dispatch/dispatchprovider.hxx
index 484e0fa..777463b 100644
--- a/framework/inc/dispatch/dispatchprovider.hxx
+++ b/framework/inc/dispatch/dispatchprovider.hxx
@@ -90,7 +90,7 @@ class DispatchProvider : // interfaces
/* member */
private:
/// reference to global service manager to create new services
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
/// weakreference to owner frame (Don't use a hard reference. Owner can't delete us then!)
css::uno::WeakReference< css::frame::XFrame > m_xFrame;
/// different dispatcher to handle special dispatch calls, protocols or URLs (they will be created on demand.)
@@ -103,7 +103,7 @@ class DispatchProvider : // interfaces
FWK_DECLARE_XINTERFACE
FWK_DECLARE_XTYPEPROVIDER
- DispatchProvider( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory ,
+ DispatchProvider( const css::uno::Reference< css::uno::XComponentContext >& xContext ,
const css::uno::Reference< css::frame::XFrame >& xFrame );
virtual css::uno::Reference< css::frame::XDispatch > SAL_CALL queryDispatch ( const css::util::URL& aURL ,
diff --git a/framework/inc/helper/oframes.hxx b/framework/inc/helper/oframes.hxx
index 04078b0..844a2f7 100644
--- a/framework/inc/helper/oframes.hxx
+++ b/framework/inc/helper/oframes.hxx
@@ -77,16 +77,14 @@ class OFrames : private ThreadHelpBase , // Must be the first of base
@seealso -
- @param "xFactory" , reference to factory which has created ouer owner(!). We can use these to create new uno-services.
- @param "xOwner" , reference to ouer owner. We hold a wekreference to prevent us against cross-references!
- @param "pFrameContainer" , pointer to shared framecontainer of owner. It's valid only, if weakreference is valid!
+ @param xOwner , reference to ouer owner. We hold a wekreference to prevent us against cross-references!
+ @param pFrameContainer , pointer to shared framecontainer of owner. It's valid only, if weakreference is valid!
@return -
@onerror -
*//*-*****************************************************************************************************/
- OFrames( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory ,
- const css::uno::Reference< css::frame::XFrame >& xOwner ,
+ OFrames( const css::uno::Reference< css::frame::XFrame >& xOwner ,
FrameContainer* pFrameContainer );
//---------------------------------------------------------------------------------------------------------
@@ -297,8 +295,7 @@ class OFrames : private ThreadHelpBase , // Must be the first of base
private:
- static sal_Bool impldbg_checkParameter_OFramesCtor ( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory ,
- const css::uno::Reference< css::frame::XFrame >& xOwner ,
+ static sal_Bool impldbg_checkParameter_OFramesCtor ( const css::uno::Reference< css::frame::XFrame >& xOwner ,
FrameContainer* pFrameContainer );
static sal_Bool impldbg_checkParameter_append ( const css::uno::Reference< css::frame::XFrame >& xFrame );
static sal_Bool impldbg_checkParameter_remove ( const css::uno::Reference< css::frame::XFrame >& xFrame );
@@ -313,7 +310,6 @@ class OFrames : private ThreadHelpBase , // Must be the first of base
private:
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory ; /// reference to global servicemanager
css::uno::WeakReference< css::frame::XFrame > m_xOwner ; /// reference to owner of this instance (Hold no hard reference!)
FrameContainer* m_pFrameContainer ; /// with owner shared list to hold all direct children of an XFramesSupplier
sal_Bool m_bRecursiveSearchProtection ; /// flag to protect against recursive searches of frames at parents
diff --git a/framework/inc/services/frame.hxx b/framework/inc/services/frame.hxx
index 492c398..1dc011e 100644
--- a/framework/inc/services/frame.hxx
+++ b/framework/inc/services/frame.hxx
@@ -129,8 +129,8 @@ class Frame : // interfaces
//---------------------------------------------------------------------------------------------------------
// constructor / destructor
//---------------------------------------------------------------------------------------------------------
- Frame( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory );
- virtual ~Frame( );
+ Frame( const css::uno::Reference< css::uno::XComponentContext >& xContext );
+ virtual ~Frame( );
//---------------------------------------------------------------------------------------------------------
// XInterface, XTypeProvider, XServiceInfo
@@ -365,7 +365,7 @@ class Frame : // interfaces
private:
- static sal_Bool implcp_ctor ( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory );
+ static sal_Bool implcp_ctor ( const css::uno::Reference< css::uno::XComponentContext >& xContext );
static sal_Bool implcp_setActiveFrame ( const css::uno::Reference< css::frame::XFrame >& xFrame );
static sal_Bool implcp_addFrameActionListener ( const css::uno::Reference< css::frame::XFrameActionListener >& xListener );
static sal_Bool implcp_removeFrameActionListener ( const css::uno::Reference< css::frame::XFrameActionListener >& xListener );
@@ -385,7 +385,7 @@ class Frame : // interfaces
//*************************************************************************************************************
private:
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory ; /// reference to factory, which has create this instance
+ css::uno::Reference< css::uno::XComponentContext > m_xContext ; /// reference to factory, which has create this instance
css::uno::Reference< css::task::XStatusIndicatorFactory > m_xIndicatorFactoryHelper ; /// reference to factory helper to create status indicator objects
css::uno::WeakReference< css::task::XStatusIndicator > m_xIndicatorInterception ; /// points to an external set progress, which should be used instead of the internal one.
css::uno::Reference< css::frame::XDispatchProvider > m_xDispatchHelper ; /// helper for XDispatch/Provider and interception interfaces
@@ -416,10 +416,10 @@ class Frame : // interfaces
FrameContainer m_aChildFrameContainer ; /// array of child frames
- inline css::uno::Reference< css::lang::XMultiServiceFactory > impl_getFactory()
+ inline css::uno::Reference< css::uno::XComponentContext > impl_getComponentContext()
{
ReadGuard aReadLock( m_aLock );
- return m_xFactory;
+ return m_xContext;
}
inline OUString impl_getName()
diff --git a/framework/source/classes/droptargetlistener.cxx b/framework/source/classes/droptargetlistener.cxx
index 66e272b..1b00c54 100644
--- a/framework/source/classes/droptargetlistener.cxx
+++ b/framework/source/classes/droptargetlistener.cxx
@@ -41,10 +41,10 @@
namespace framework
{
-DropTargetListener::DropTargetListener( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory,
- const css::uno::Reference< css::frame::XFrame >& xFrame )
+DropTargetListener::DropTargetListener( const css::uno::Reference< css::uno::XComponentContext >& xContext,
+ const css::uno::Reference< css::frame::XFrame >& xFrame )
: ThreadHelpBase ( &Application::GetSolarMutex() )
- , m_xFactory ( xFactory )
+ , m_xContext ( xContext )
, m_xTargetFrame ( xFrame )
, m_pFormats ( new DataFlavorExVector )
{
@@ -54,8 +54,8 @@ DropTargetListener::DropTargetListener( const css::uno::Reference< css::lang::XM
DropTargetListener::~DropTargetListener()
{
- m_xTargetFrame = css::uno::WeakReference< css::frame::XFrame >();
- m_xFactory = css::uno::Reference< css::lang::XMultiServiceFactory >();
+ m_xTargetFrame.clear();
+ m_xContext.clear();
delete m_pFormats;
m_pFormats = NULL;
}
@@ -64,8 +64,8 @@ DropTargetListener::~DropTargetListener()
void SAL_CALL DropTargetListener::disposing( const css::lang::EventObject& ) throw( css::uno::RuntimeException )
{
- m_xTargetFrame = css::uno::WeakReference< css::frame::XFrame >();
- m_xFactory = css::uno::Reference< css::lang::XMultiServiceFactory >();
+ m_xTargetFrame.clear();
+ m_xContext.clear();
}
// -----------------------------------------------------------------------------
@@ -212,7 +212,7 @@ void DropTargetListener::implts_OpenFile( const String& rFilePath )
/* SAFE { */
ReadGuard aReadLock(m_aLock);
css::uno::Reference< css::frame::XFrame > xTargetFrame( m_xTargetFrame.get(), css::uno::UNO_QUERY );
- css::uno::Reference< css::util::XURLTransformer > xParser ( css::util::URLTransformer::create(::comphelper::getComponentContext(m_xFactory)) );
+ css::uno::Reference< css::util::XURLTransformer > xParser ( css::util::URLTransformer::create(m_xContext) );
aReadLock.unlock();
/* } SAFE */
if (xTargetFrame.is() && xParser.is())
diff --git a/framework/source/classes/taskcreator.cxx b/framework/source/classes/taskcreator.cxx
index f9fb99f..69f33bb 100644
--- a/framework/source/classes/taskcreator.cxx
+++ b/framework/source/classes/taskcreator.cxx
@@ -37,12 +37,12 @@ namespace framework{
@descr We need a valid uno service manager to create or instanciate new services.
All other information to create frames or tasks come in on right interface methods.
- @param xSMGR
+ @param xContext
points to the valid uno service manager
*//*-*****************************************************************************************************/
-TaskCreator::TaskCreator( const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR )
+TaskCreator::TaskCreator( const css::uno::Reference< css::uno::XComponentContext >& xContext )
: ThreadHelpBase( )
- , m_xSMGR ( xSMGR )
+ , m_xContext ( xContext )
{
}
@@ -52,7 +52,7 @@ TaskCreator::TaskCreator( const css::uno::Reference< css::lang::XMultiServiceFac
*//*-*****************************************************************************************************/
TaskCreator::~TaskCreator()
{
- m_xSMGR.clear();
+ m_xContext.clear();
}
/*-****************************************************************************************************//**
@@ -63,7 +63,7 @@ css::uno::Reference< css::frame::XFrame > TaskCreator::createTask( const OUStrin
{
/* SAFE { */
ReadGuard aReadLock( m_aLock );
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext > xContext = m_xContext;
aReadLock.unlock();
/* } SAFE */
@@ -78,7 +78,7 @@ css::uno::Reference< css::frame::XFrame > TaskCreator::createTask( const OUStrin
)
{
::comphelper::ConfigurationHelper::readDirectKey(
- comphelper::getComponentContext(xSMGR),
+ xContext,
"org.openoffice.Office.TabBrowse",
"TaskCreatorService",
"ImplementationName",
@@ -86,7 +86,7 @@ css::uno::Reference< css::frame::XFrame > TaskCreator::createTask( const OUStrin
}
xCreator = css::uno::Reference< css::lang::XSingleServiceFactory >(
- xSMGR->createInstance(sCreator), css::uno::UNO_QUERY_THROW);
+ xContext->getServiceManager()->createInstanceWithContext(sCreator, xContext), css::uno::UNO_QUERY_THROW);
}
catch(const css::uno::Exception&)
{}
@@ -97,13 +97,13 @@ css::uno::Reference< css::frame::XFrame > TaskCreator::createTask( const OUStrin
// library then these class here ... Why we should not be able to create it ?
if ( ! xCreator.is())
xCreator = css::uno::Reference< css::lang::XSingleServiceFactory >(
- xSMGR->createInstance(IMPLEMENTATIONNAME_FWK_TASKCREATOR), css::uno::UNO_QUERY_THROW);
+ xContext->getServiceManager()->createInstanceWithContext(IMPLEMENTATIONNAME_FWK_TASKCREATOR, xContext), css::uno::UNO_QUERY_THROW);
css::uno::Sequence< css::uno::Any > lArgs(5);
css::beans::NamedValue aArg ;
aArg.Name = OUString(ARGUMENT_PARENTFRAME);
- aArg.Value <<= css::uno::Reference< css::frame::XFrame >( css::frame::Desktop::create( comphelper::getComponentContext(xSMGR) ), css::uno::UNO_QUERY_THROW);
+ aArg.Value <<= css::uno::Reference< css::frame::XFrame >( css::frame::Desktop::create( xContext ), css::uno::UNO_QUERY_THROW);
lArgs[0] <<= aArg;
aArg.Name = OUString(ARGUMENT_CREATETOPWINDOW);
diff --git a/framework/source/dispatch/closedispatcher.cxx b/framework/source/dispatch/closedispatcher.cxx
index 1fa0c57..2ff7916 100644
--- a/framework/source/dispatch/closedispatcher.cxx
+++ b/framework/source/dispatch/closedispatcher.cxx
@@ -72,12 +72,12 @@ DEFINE_XTYPEPROVIDER_4(CloseDispatcher ,
css::frame::XDispatch )
//-----------------------------------------------
-CloseDispatcher::CloseDispatcher(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- const css::uno::Reference< css::frame::XFrame >& xFrame ,
- const OUString& sTarget)
+CloseDispatcher::CloseDispatcher(const css::uno::Reference< css::uno::XComponentContext >& rxContext ,
+ const css::uno::Reference< css::frame::XFrame >& xFrame ,
+ const OUString& sTarget)
: ThreadHelpBase (&Application::GetSolarMutex() )
, ::cppu::OWeakObject( )
- , m_xSMGR (xSMGR )
+ , m_xContext (rxContext )
, m_aAsyncCallback (LINK( this, CloseDispatcher, impl_asyncCallback))
, m_lStatusListener (m_aLock.getShareableOslMutex() )
, m_pSysWindow(NULL)
@@ -282,7 +282,7 @@ IMPL_LINK_NOARG(CloseDispatcher, impl_asyncCallback)
// BTW: Make some copies, which are needed later ...
EOperation eOperation = m_eOperation;
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext > xContext = m_xContext;
css::uno::Reference< css::frame::XFrame > xCloseFrame (m_xCloseFrame.get(), css::uno::UNO_QUERY);
css::uno::Reference< css::frame::XDispatchResultListener > xListener = m_xResultListener;
@@ -301,7 +301,7 @@ IMPL_LINK_NOARG(CloseDispatcher, impl_asyncCallback)
// Analyze the environment a first time.
// If we found some special cases, we can
// make some decisions erliar!
- css::uno::Reference< css::frame::XFramesSupplier > xDesktop( css::frame::Desktop::create(comphelper::getComponentContext(xSMGR)), css::uno::UNO_QUERY_THROW);
+ css::uno::Reference< css::frame::XFramesSupplier > xDesktop( css::frame::Desktop::create(xContext), css::uno::UNO_QUERY_THROW);
FrameListAnalyzer aCheck1(xDesktop, xCloseFrame, FrameListAnalyzer::E_HELP | FrameListAnalyzer::E_BACKINGCOMPONENT);
// a) If the curent frame (where the close dispatch was requested for) does not have
@@ -465,11 +465,11 @@ sal_Bool CloseDispatcher::implts_prepareFrameForClosing(const css::uno::Referenc
{
// SAFE -> ----------------------------------
ReadGuard aReadLock(m_aLock);
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext > xContext = m_xContext;
aReadLock.unlock();
// <- SAFE ----------------------------------
- css::uno::Reference< css::frame::XFramesSupplier > xDesktop( css::frame::Desktop::create( comphelper::getComponentContext(xSMGR) ), css::uno::UNO_QUERY_THROW);
+ css::uno::Reference< css::frame::XFramesSupplier > xDesktop( css::frame::Desktop::create( xContext ), css::uno::UNO_QUERY_THROW);
FrameListAnalyzer aCheck(xDesktop, xFrame, FrameListAnalyzer::E_ALL);
sal_Int32 c = aCheck.m_lModelFrames.getLength();
@@ -533,8 +533,8 @@ sal_Bool CloseDispatcher::implts_establishBackingMode()
{
// SAFE -> ----------------------------------
ReadGuard aReadLock(m_aLock);
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR;
- css::uno::Reference< css::frame::XFrame > xFrame (m_xCloseFrame.get(), css::uno::UNO_QUERY);
+ css::uno::Reference< css::uno::XComponentContext > xContext = m_xContext;
+ css::uno::Reference< css::frame::XFrame > xFrame (m_xCloseFrame.get(), css::uno::UNO_QUERY);
aReadLock.unlock();
// <- SAFE ----------------------------------
@@ -548,7 +548,7 @@ sal_Bool CloseDispatcher::implts_establishBackingMode()
css::uno::Reference< css::awt::XWindow > xContainerWindow = xFrame->getContainerWindow();
css::uno::Reference< css::frame::XController > xStartModule = css::frame::StartModule::createWithParentWindow(
- comphelper::getComponentContext(xSMGR), xContainerWindow);
+ xContext, xContainerWindow);
// Attention: You MUST(!) call setComponent() before you call attachFrame().
css::uno::Reference< css::awt::XWindow > xBackingWin(xStartModule, css::uno::UNO_QUERY);
@@ -564,11 +564,11 @@ sal_Bool CloseDispatcher::implts_terminateApplication()
{
// SAFE -> ----------------------------------
ReadGuard aReadLock(m_aLock);
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext > xContext = m_xContext;
aReadLock.unlock();
// <- SAFE ----------------------------------
- css::uno::Reference< css::frame::XDesktop2 > xDesktop = css::frame::Desktop::create( comphelper::getComponentContext(xSMGR) );
+ css::uno::Reference< css::frame::XDesktop2 > xDesktop = css::frame::Desktop::create( xContext );
return xDesktop->terminate();
}
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list