summaryrefslogtreecommitdiff
path: root/desktop/unx/source/start.c
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/unx/source/start.c')
-rw-r--r--desktop/unx/source/start.c26
1 files changed, 15 insertions, 11 deletions
diff --git a/desktop/unx/source/start.c b/desktop/unx/source/start.c
index f1e872efa4c9..2800ef337deb 100644
--- a/desktop/unx/source/start.c
+++ b/desktop/unx/source/start.c
@@ -831,21 +831,24 @@ SAL_IMPLEMENT_MAIN_WITH_ARGS( argc, argv )
if ( pUsePlugin && !strcmp(pUsePlugin, "svp") )
args->bInhibitSplash = sal_True;
- pPipePath = get_pipe_path( args->pAppPath );
-
- if ( ( fd = connect_pipe( pPipePath ) ) >= 0 )
+ if ( !args->bInhibitPipe )
{
- rtl_uString *pCwdPath = NULL;
- osl_getProcessWorkingDir( &pCwdPath );
+ pPipePath = get_pipe_path( args->pAppPath );
+
+ if ( ( fd = connect_pipe( pPipePath ) ) >= 0 )
+ {
+ rtl_uString *pCwdPath = NULL;
+ osl_getProcessWorkingDir( &pCwdPath );
- bSentArgs = send_args( fd, pCwdPath );
+ bSentArgs = send_args( fd, pCwdPath );
- close( fd );
- }
+ close( fd );
+ }
#if OSL_DEBUG_LEVEL > 1
- else
- ustr_debug( "Failed to connect to pipe", pPipePath );
+ else
+ ustr_debug( "Failed to connect to pipe", pPipePath );
#endif
+ }
if ( !bSentArgs )
{
@@ -935,7 +938,8 @@ SAL_IMPLEMENT_MAIN_WITH_ARGS( argc, argv )
}
/* cleanup */
- rtl_uString_release( pPipePath );
+ if ( pPipePath )
+ rtl_uString_release( pPipePath );
args_free (args);
return status;