summaryrefslogtreecommitdiff
path: root/desktop
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2005-07-27 14:28:26 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2005-07-27 14:28:26 +0000
commit4a7c3ea53a94097769dc6a1bb1a7e026229db2e5 (patch)
tree9cf27e658a6de69d66c80e3a05c3ecd6d55e893b /desktop
parentb6fdcd4ccf6678484cacb2f4a678c281694f53b1 (diff)
INTEGRATION: CWS gvfs01 (1.22.76); FILE MERGED
2005/07/27 10:55:38 as 1.22.76.1: #124597# HACK: init gnome vfs on startup, so it doesnt make trouble if init is called from another thread
Diffstat (limited to 'desktop')
-rw-r--r--desktop/source/app/appinit.cxx24
1 files changed, 22 insertions, 2 deletions
diff --git a/desktop/source/app/appinit.cxx b/desktop/source/app/appinit.cxx
index e5d6276d9ef8..7de0be82e1ce 100644
--- a/desktop/source/app/appinit.cxx
+++ b/desktop/source/app/appinit.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: appinit.cxx,v $
*
- * $Revision: 1.22 $
+ * $Revision: 1.23 $
*
- * last change: $Author: obo $ $Date: 2005-04-22 11:28:47 $
+ * last change: $Author: hr $ $Date: 2005-07-27 15:28:26 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -232,6 +232,8 @@ static bool configureUcb(bool bServer, rtl::OUString const & rPortalConnect)
{
Reference<XContentProviderManager> xCPM =
cb->getContentProviderManagerInterface();
+#if 0
+
Reference<XContentProviderFactory> xCPF(
xServiceFactory->createInstance(
rtl::OUString::createFromAscii(
@@ -246,6 +248,24 @@ static bool configureUcb(bool bServer, rtl::OUString const & rPortalConnect)
),
rtl::OUString::createFromAscii(".*"),
false);
+#else
+
+ // Workaround for P1 #124597#. Instanciate GNOME-VFS-UCP in the thread that initialized
+ // GNOME in order to avoid a deadlock that may occure in case UCP gets initialized from
+ // a different thread. The latter may happen when calling the Office remotely via UNO.
+ // THIS IS NOT A FIX, JUST A WORKAROUND!
+
+ Reference<XContentProvider> xCP(
+ xServiceFactory->createInstance(
+ rtl::OUString::createFromAscii(
+ "com.sun.star.ucb.GnomeVFSContentProvider")),
+ UNO_QUERY);
+ if(xCP.is())
+ xCPM->registerContentProvider(
+ xCP,
+ rtl::OUString::createFromAscii(".*"),
+ false);
+#endif
}
}
} catch (RuntimeException e) {