Now that we have default values for Exception constructor params,
remove lots of boilerplate code.
Change-Id: I620bd641eecfed38e6123873b3b94aaf47922e74
...mostly done with a rewriting Clang plugin, with just some manual tweaking
necessary to fix poor macro usage.
Change-Id: I71fa20213e86be10de332ece0aa273239df7b61a
Change all instances of hardcoded "program", "share" etc subfolder names to
use those from <config_folders.h> instead. In normal builds, the end result
will not change.
Change-Id: I91c95cd8e482818be67307e889ae6df887763f53
Modules sal, salhelper, cppu, cppuhelper, codemaker (selectively) and odk
have kept them, in order not to break external API (the automatic using declaration
is LO-internal).
Change-Id: I588fc9e0c45b914f824f91c0376980621d730f09
Moved portions from module i18npool, all of former i18nisolang1 library
that now is i18nlangtag. Included are languagetag, isolang and mslangid.
This i18nlangtag code is now even used by module comphelper, so
disentangling i18npool and making this an own module was needed to not
create circular module dependencies.
Change-Id: Ib887c3d6dde667403fd22d382310ba5f1a9b0015
This changes all generated API headers (.hpp and .hdl) to use a
namespace alias 'css' instead of the pointlessly long com::sun::star
Makes the change in cppumaker & associated tools, adds a global
namespace alias definition in sal/types.h, and removes a kiloton
of local, now pointless-to-harmful versions of that alias from all
over the code.
Change-Id: Ice5a644a6b971a981f01dc0589d48f5add31cc0f
...which effectively is just a glorious wrapper around
comphelper::getProcessServiceFactory.
In turn gets also rid of ImplSVAppData's mxMSF and mpMSFTempFileName and the
rSMgr parameter to InitVCL.
All the VCL users "soffice", "spadmin", and "unopkg gui" appear to still work
fine.
Change-Id: I797d48f7d0d8c35bb82124c9ab0ee63850c4d863
...the same way it is done in soffice.bin. framework's Desktop::dispose()
requires the solar mutex to be still alive, which is destroyed in DeInitVCL, so
if the component context/service manager is only disposed afterwards, the solar
mutex is already gone.
This required moving disposeBridges() around, but it allowed to get rid of
DisposeGuard.
Change-Id: Ibec3d19040fdae23f492cd1e29084e673403e00b
Create a merged XBridgeFactory2 interface for this service to implement.
Which is backwards-compatible, but does not require creating a new service.
Change-Id: I7309f4d30f0e772bc203c701eb3407b920ffafcc
* As UCB is only ever initialized with "Local"/"Office", remove this
configuration vector completely. The "create" ctor creates an instance
internally initialized with those "Local"/"Office" keys. Special (test) code
can still instantiate an uninitialized one via plain createInstance. And for
backwards compatilibity process startup still ensures to create an initialized
instance early, in case there is still code out there (in extensions) that
later calls plain createInstance and expects to get the already-initialized
(single) instance.
* XInitialization is an "implementation detail" of the UniversalContentBroker
service, do not expose in XUniversalContentBroker.
* ucbhelper/configurationkeys.hxx is no longer needed and is removed.
* ucbhelper/contentbroker.hxx is an empty wrapper and is removed; however, that
requires ucbhelper::Content constructors to take explicit XComponentContext
arguments now.
* The only remaining code in ucbhelper/source/client/contentbroker.cxx is
Android-only InitUCBHelper. Is that relevant still?
Change-Id: I3f7bddd0456bffbcd13590c66d9011915c760f28
* 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
Now that 5c47e5f63a79a9e72ec4a100786b1bbf65137ed4 "fdo#51252 Disable copying
share/prereg/bundled to avoid startup crashes" removed the use of share/prereg,
there is no longer need to generate it in the first place (by calling "unopkg
sync" at build or installation time), and so no need for the "unopkg sync" sub-
command, either. This also allows to simplify some of the jvmfwk code that was
only there so that "unopkg sync" (which can require a JVM) can work in "hostile"
environments (during build and installation).
Change-Id: I52657384f4561bf27948ba4f0f88f4498e90987f
... to clean out all sorts of inconsitencies that can have accrued there over
time apparently due to how the mechanism of copying share/prereg/bundled worked,
and to work around stale $BUNDLED_EXTENSIONS_PREREG references in a better way
than the previous 81fd6b084b0f3c0eb5a97c77592f5ceb21d2dfb1 "fdo#53006 Force
reinstall of all bundled extensions on upgrade."
See the comment on refreshBundledExtensionsDir for how, at least in theory, that
functionality could be removed again in the future.
This effectively reverts 2d2b19dea1ab401b1b4971ff5b12b87bb11fd666 "Force
ExtensionManager resync when the implementation changes" and
81fd6b084b0f3c0eb5a97c77592f5ceb21d2dfb1 "fdo#53006 Force reinstall of all
bundled extensions on upgrade" (the latter at least on master; it had never been
cherry-picked to libreoffice-3-6), which it obsoletes.
Change-Id: I8f80c07a06ec9d53b03813338eeff7d7757c9d4d
...as checking the lastsynchronized time-stamps can give wrong results if new and old
impl use same user config and old impl is started once more after new impl is installed,
in which case per-user data of bundled exts of new impl would not be regenerated,
leading to inconsistencies.