From 9338e908d37312a845e2573bb5d99774b9456f25 Mon Sep 17 00:00:00 2001 From: Tor Lillqvist Date: Tue, 30 Jun 2015 19:42:45 +0300 Subject: 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 --- desktop/source/app/officeipcthread.cxx | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) 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 -- cgit