summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHank Leininger <hlein@korelogic.com>2016-02-26 20:23:03 -0500
committerjan iversen <jani@documentfoundation.org>2016-03-02 08:17:13 +0000
commit87c011134031374cf9104ec2fc39ef121d8a6802 (patch)
tree40470e3a4e54dc0cb792378d36fe47e22380a7a3
parentf0c38c67e4a5d1b1fa58873f2db88310d8bf295a (diff)
tdf#98210 do not require R_OK for pipe dir
Also better error handling if pipe dirs are really not usable. Change-Id: I1c865b9a9f1f08d2cffd07343494feca585ec75e Reviewed-on: https://gerrit.libreoffice.org/22727 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: jan iversen <jani@documentfoundation.org>
-rw-r--r--desktop/unx/source/start.c9
-rw-r--r--sal/osl/unx/pipe.cxx4
2 files changed, 9 insertions, 4 deletions
diff --git a/desktop/unx/source/start.c b/desktop/unx/source/start.c
index 525fe22927e0..b072f0f01c25 100644
--- a/desktop/unx/source/start.c
+++ b/desktop/unx/source/start.c
@@ -323,10 +323,15 @@ get_pipe_path( rtl_uString *pAppPath )
if ( !pMd5hash )
rtl_uString_new( &pMd5hash );
- if ( access( PIPEDEFAULTPATH, R_OK|W_OK ) == 0 )
+ if ( access( PIPEDEFAULTPATH, W_OK ) == 0 )
rtl_uString_newFromAscii( &pResult, PIPEDEFAULTPATH );
- else
+ else if ( access( PIPEALTERNATEPATH, W_OK ) == 0 )
rtl_uString_newFromAscii( &pResult, PIPEALTERNATEPATH );
+ else
+ {
+ fprintf( stderr, "ERROR: no valid pipe path found.\n" );
+ exit( 1 );
+ }
rtl_uString_newFromAscii( &pTmp, "/OSL_PIPE_" );
rtl_uString_newConcat( &pResult, pResult, pTmp );
diff --git a/sal/osl/unx/pipe.cxx b/sal/osl/unx/pipe.cxx
index 93213952e382..37ac7ec91e8f 100644
--- a/sal/osl/unx/pipe.cxx
+++ b/sal/osl/unx/pipe.cxx
@@ -166,11 +166,11 @@ oslPipe SAL_CALL osl_psz_createPipe(const sal_Char *pszPipeName, oslPipeOptions
bool bNameTooLong = false;
oslPipe pPipe;
- if (access(PIPEDEFAULTPATH, R_OK|W_OK) == 0)
+ if (access(PIPEDEFAULTPATH, W_OK) == 0)
{
strncpy(name, PIPEDEFAULTPATH, sizeof(name));
}
- else if (access(PIPEALTERNATEPATH, R_OK|W_OK) == 0)
+ else if (access(PIPEALTERNATEPATH, W_OK) == 0)
{
strncpy(name, PIPEALTERNATEPATH, sizeof(name));
}