diff options
author | Jan Holesovsky <kendy@suse.cz> | 2011-05-27 20:46:20 +0200 |
---|---|---|
committer | Jan Holesovsky <kendy@suse.cz> | 2011-05-27 20:46:20 +0200 |
commit | 9df8682ced86258da76a730ecf354c788fffc1f2 (patch) | |
tree | 590af31bfe3d5cfd0d4de4812a0bd696b9415d2b /desktop | |
parent | b41941a81473b48e895ab3a30905986b029facc4 (diff) | |
parent | a79c69155ec42ce6817980b6c875f9b39041d2d4 (diff) |
Merge remote-tracking branch 'origin/integration/dev300_m106'
Conflicts:
basic/source/classes/sbunoobj.cxx
basic/source/inc/runtime.hxx
basic/source/runtime/step1.cxx
desktop/source/deployment/dp_services.cxx
drawinglayer/prj/d.lst
drawinglayer/source/primitive2d/makefile.mk
sfx2/source/appl/appinit.cxx
sfx2/source/appl/appquit.cxx
sfx2/source/inc/appdata.hxx
sfx2/source/view/viewfrm.cxx
svx/source/fmcomp/gridctrl.cxx
vbahelper/source/vbahelper/vbahelper.cxx
Diffstat (limited to 'desktop')
-rw-r--r-- | desktop/source/app/app.cxx | 8 | ||||
-rw-r--r-- | desktop/source/deployment/dp_services.cxx | 2 | ||||
-rw-r--r-- | desktop/source/deployment/registry/component/dp_component.cxx | 26 |
3 files changed, 24 insertions, 12 deletions
diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx index 202a1fae35ab..8991bb6334b0 100644 --- a/desktop/source/app/app.cxx +++ b/desktop/source/app/app.cxx @@ -1733,6 +1733,14 @@ int Desktop::Main() if ( bAbort ) return EXIT_FAILURE; + { + ::comphelper::ComponentContext aContext( xSMgr ); + xRestartManager.set( aContext.getSingleton( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.task.OfficeRestartManager" ) ) ), UNO_QUERY ); + } + + // check whether the shutdown is caused by restart + pExecGlobals->bRestartRequested = ( xRestartManager.is() && xRestartManager->isRestartRequested( sal_True ) ); + Migration::migrateSettingsIfNecessary(); // keep a language options instance... diff --git a/desktop/source/deployment/dp_services.cxx b/desktop/source/deployment/dp_services.cxx index 58a9ca5b26d1..a62873d89c5f 100644 --- a/desktop/source/deployment/dp_services.cxx +++ b/desktop/source/deployment/dp_services.cxx @@ -85,8 +85,6 @@ bool singleton_entries( uno::Reference<registry::XRegistryKey> const& ); extern "C" { -struct uno_Environment; - SAL_DLLPUBLIC_EXPORT void SAL_CALL component_getImplementationEnvironment( const sal_Char ** ppEnvTypeName, uno_Environment ** ) { diff --git a/desktop/source/deployment/registry/component/dp_component.cxx b/desktop/source/deployment/registry/component/dp_component.cxx index 4591ff4fd101..6bf37364803f 100644 --- a/desktop/source/deployment/registry/component/dp_component.cxx +++ b/desktop/source/deployment/registry/component/dp_component.cxx @@ -1924,17 +1924,23 @@ void BackendImpl::ComponentsPackageImpl::processPackage_( if (doRegisterPackage) { ComponentBackendDb::Data data; data.javaTypeLibrary = false; - std::vector< css::uno::Reference< css::uno::XInterface > > factories; - css::uno::Reference< css::uno::XComponentContext > context( - that->getObject(url), css::uno::UNO_QUERY); - if (!context.is()) { - context.set( - that->insertObject( - url, - raise_uno_process( - that->getComponentContext(), abortChannel)), - css::uno::UNO_QUERY_THROW); + css::uno::Reference< css::uno::XComponentContext > context; + if (startup) { + context = that->getComponentContext(); + } else { + context.set(that->getObject(url), css::uno::UNO_QUERY); + if (!context.is()) { + context.set( + that->insertObject( + url, + raise_uno_process( + that->getComponentContext(), abortChannel)), + css::uno::UNO_QUERY_THROW); + } } + + std::vector< css::uno::Reference< css::uno::XInterface > > factories; + css::uno::Reference< css::registry::XSimpleRegistry > registry( css::uno::Reference< css::lang::XMultiComponentFactory >( that->getComponentContext()->getServiceManager(), |