summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2012-08-02 18:10:03 +0200
committerStephan Bergmann <sbergman@redhat.com>2012-08-02 18:26:39 +0200
commit81fd6b084b0f3c0eb5a97c77592f5ceb21d2dfb1 (patch)
treee5a9ee88b2e11c00060cc8f8e1e9d2d77b5c2f60 /offapi/com/sun/star
parent85a8a72067c4e13f3bddbe11e0899702202f4c4f (diff)
fdo#53006 Force reinstall of all bundled extensions on upgrade
...as the per-user data about bundled extensions can otherwise contain stale $BUNDLED_EXTENSIONS_PREREG references if the old installation used share/prereg/bundled/, the new one does not (cf. the fixing for fdo#51252 "LO cannot start (reports runtime error with Visual C++ Runtime Library)"), and a bundled extension did not change version. It is safe to tie this behavior to the existing "force" parameter of dp_misc::syncRepositories, as the only place that calls it with force=true is the call to Desktop::SynchronizeExtensionRepositories(newInst) in Desktop::Main, where newInst=true is the relevant condition for this behavior, too. As stated in XExtensionManager.idl, "this [...] can go again once no exisiting UserInstallation's user/extensions/bundled/ data can contain any $BUNDLED_EXTENSIONS_PREREG references any longer." Change-Id: I630dec8f2d20282ee47c65ac61ed2c9b062448e1
Diffstat (limited to 'offapi/com/sun/star')
-rw-r--r--offapi/com/sun/star/deployment/XExtensionManager.idl8
-rw-r--r--offapi/com/sun/star/deployment/XPackageManager.idl8
2 files changed, 15 insertions, 1 deletions
diff --git a/offapi/com/sun/star/deployment/XExtensionManager.idl b/offapi/com/sun/star/deployment/XExtensionManager.idl
index 7744ea6d839e..3809d905fa5a 100644
--- a/offapi/com/sun/star/deployment/XExtensionManager.idl
+++ b/offapi/com/sun/star/deployment/XExtensionManager.idl
@@ -285,11 +285,19 @@ interface XExtensionManager
The active extensions are determined. That is, shared or bundled extensions
are not necessaryly registered (<member>XPackage::registerPackage</member>).
+ @param forceBundled
+ whether to reinstall all bundled extensions even if their versions
+ have not changed (which might be necessary when an upgraded
+ installation outdates references to any share/prereg/bundled/
+ data; this parameter can go again once no exisiting
+ UserInstallation's user/extensions/bundled/ data can contain any
+ $BUNDLED_EXTENSIONS_PREREG references any longer)
@return
If true - then at least one extension was removed or added. Otherwise
nothing was changed.
*/
boolean synchronize(
+ [in] boolean forceBundled,
[in] com::sun::star::task::XAbortChannel xAbortChannel,
[in] com::sun::star::ucb::XCommandEnvironment xCmdEnv )
raises (DeploymentException,
diff --git a/offapi/com/sun/star/deployment/XPackageManager.idl b/offapi/com/sun/star/deployment/XPackageManager.idl
index 65cb24a6ac0f..842efdf3b5e4 100644
--- a/offapi/com/sun/star/deployment/XPackageManager.idl
+++ b/offapi/com/sun/star/deployment/XPackageManager.idl
@@ -259,6 +259,10 @@ interface XPackageManager
Added extensions will be added to the database and removed extensions
will be removed from the database.
+ @param force
+ whether to reinstall all extensions even if their versions have not
+ changed (see forceBundled parameter of
+ XExtensionManager.synchronize)
@param xAddedExtension
new extensions which may need to be registered.
@@ -268,7 +272,9 @@ interface XPackageManager
If true - then at least one extension was removed or added. Otherwise
nothing was changed.
*/
- boolean synchronize([in] com::sun::star::task::XAbortChannel xAbortChannel,
+ boolean synchronize(
+ [in] boolean force,
+ [in] com::sun::star::task::XAbortChannel xAbortChannel,
[in] com::sun::star::ucb::XCommandEnvironment xCmdEnv )
raises (DeploymentException,
com::sun::star::ucb::CommandFailedException,