diff options
author | Jan Holesovsky <kendy@suse.cz> | 2010-12-30 02:33:18 +0100 |
---|---|---|
committer | Norbert Thiebaud <nthiebaud@gmail.com> | 2010-12-30 08:27:17 -0600 |
commit | e88835014fe5475cd019c0512a784cad8c3a4c25 (patch) | |
tree | 5a1746f5ba2e383a17687152bd9bf9858e2ed106 | |
parent | 1d5ea739d48df24c475a70292d17170e71140ea6 (diff) |
Do not block when launching firefox, fdo#32427.
-rw-r--r-- | shell/source/unix/exec/shellexec.cxx | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/shell/source/unix/exec/shellexec.cxx b/shell/source/unix/exec/shellexec.cxx index 224452ae5d..739dc44865 100644 --- a/shell/source/unix/exec/shellexec.cxx +++ b/shell/source/unix/exec/shellexec.cxx @@ -282,7 +282,13 @@ void SAL_CALL ShellExec::execute( const OUString& aCommand, const OUString& aPar pDesktopLaunch = NULL; } - OString cmd = aBuffer.makeStringAndClear(); + OString cmd = +#ifdef LINUX + // avoid blocking (call it in background) + OStringBuffer().append( "( " ).append( aBuffer ).append( " ) &" ).makeStringAndClear(); +#else + aBuffer.makeStringAndClear(); +#endif if ( 0 != pclose(popen(cmd.getStr(), "w")) ) { int nerr = errno; |