diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2012-08-24 16:45:20 +0200 |
---|---|---|
committer | Norbert Thiebaud <nthiebaud@gmail.com> | 2012-08-29 20:18:29 +0000 |
commit | 6d261e7aac12a876acb6496085e5329632595d39 (patch) | |
tree | d2edcd362e94650298a0d0d8b0b44d0aa4752618 /desktop/source/deployment/manager/dp_manager.cxx | |
parent | b4f8acb41165a28b2db47acd3c6b624a4c507c54 (diff) |
fdo#53968 etc.: Fix more "doesn't start after upgrade" problems
* fdo#53968 revealed that multiple soffice.bin instances can run removeTree in
parallel. Therefore, demoted failures from exceptions to SAL_WARNs. (And
keeping fingers crossed.)
* a8cdce148c76c93c5d41820610d6e6ac175e03a7 "fdo#53655: Ignore failure to remove
directories (as happens on Windows XP)" was due to a forgotten
osl::Directory::close before calling osl::Directory::remove after all.
* UserInstallations have been seen in the wild where no extensions were
installed per-user (any longer), but user/uno_packages/cache/registry/
com.sun.star.comp.deployment.component.PackageRegistryBackend/*.rdb files
contained data nevertheless. To reliably clean out any old junk,
refreshBundledExtensionsDir has been extended to cleanExtensionsCache which in
tandem with an extended Desktop::SynchronizeExtensionRepositories now cleanly
re-installs all bundled, shared, and per-user extensions after a LO upgrade.
Change-Id: Ic6b5b6c1945d76eb3a65b6cd4512a657b7a835a0
Reviewed-on: https://gerrit.libreoffice.org/477
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
Diffstat (limited to 'desktop/source/deployment/manager/dp_manager.cxx')
-rw-r--r-- | desktop/source/deployment/manager/dp_manager.cxx | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/desktop/source/deployment/manager/dp_manager.cxx b/desktop/source/deployment/manager/dp_manager.cxx index 8a08320cd6ea..8e3d109f08c4 100644 --- a/desktop/source/deployment/manager/dp_manager.cxx +++ b/desktop/source/deployment/manager/dp_manager.cxx @@ -1164,14 +1164,14 @@ PackageManagerImpl::getDeployedPackages( //ToDo: the function must not call registerPackage, do this in //XExtensionManager.reinstallDeployedExtensions void PackageManagerImpl::reinstallDeployedPackages( - Reference<task::XAbortChannel> const & /*xAbortChannel*/, + sal_Bool force, Reference<task::XAbortChannel> const & /*xAbortChannel*/, Reference<XCommandEnvironment> const & xCmdEnv_ ) throw (deployment::DeploymentException, CommandFailedException, CommandAbortedException, lang::IllegalArgumentException, RuntimeException) { check(); - if (office_is_running()) + if (!force && office_is_running()) throw RuntimeException( OUSTR("You must close any running Office process before " "reinstalling packages!"), static_cast<OWeakObject *>(this) ); |