summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTor Lillqvist <tml@collabora.com>2015-06-30 19:42:45 +0300
committerAndras Timar <andras.timar@collabora.com>2015-08-03 20:10:03 +0200
commit9338e908d37312a845e2573bb5d99774b9456f25 (patch)
tree2a7bbe08697362587fae3770cdb2f0653d9577d8
parentERROR ITMS-90511: CFBundleIdentifier Collision (diff)
downloadcore-9338e908d37312a845e2573bb5d99774b9456f25.tar.gz
core-9338e908d37312a845e2573bb5d99774b9456f25.zip
tdf#92191: Don't use any IPC pipe in a sandboxed OS X app
Creating the pipe fails when sandboxed. This caused us to not start the OfficeIPCThread, and that then meant that the file open requests coming in through VCL_NSApplication's application:openFile: method in vclnsapp.mm were not processed properly. The OS takes care of not starting multiple LO apps simultaneously anyway, so we don't really need any pipe, I hope. Change-Id: Ia920520ce2928787313f83199028f9c9942f61f3
-rw-r--r--desktop/source/app/officeipcthread.cxx11
1 files changed, 10 insertions, 1 deletions
diff --git a/desktop/source/app/officeipcthread.cxx b/desktop/source/app/officeipcthread.cxx
index 2c4e9d1df365..e74aa833e87b 100644
--- a/desktop/source/app/officeipcthread.cxx
+++ b/desktop/source/app/officeipcthread.cxx
@@ -516,9 +516,16 @@ OfficeIPCThread::Status OfficeIPCThread::EnableOfficeIPCThread()
if ( aUserInstallPathHashCode.isEmpty() )
return IPC_STATUS_BOOTSTRAP_ERROR; // Something completely broken, we cannot create a valid hash code!
+ PipeMode nPipeMode = PIPEMODE_DONTKNOW;
+
+#if HAVE_FEATURE_MACOSX_SANDBOX
+
+ nPipeMode = PIPEMODE_CREATED;
+
+#else
+
OUString aPipeIdent( "SingleOfficeIPC_" + aUserInstallPathHashCode );
- PipeMode nPipeMode = PIPEMODE_DONTKNOW;
do
{
osl::Security &rSecurity = Security::get();
@@ -561,6 +568,8 @@ OfficeIPCThread::Status OfficeIPCThread::EnableOfficeIPCThread()
} while ( nPipeMode == PIPEMODE_DONTKNOW );
+#endif
+
if ( nPipeMode == PIPEMODE_CREATED )
{
// Seems we are the one and only, so start listening thread