diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2014-02-28 08:36:29 +0100 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2014-02-28 08:36:29 +0100 |
commit | a4edbfa031eb4cd72678051f1510afde4f77951e (patch) | |
tree | 76cef11b1a13538c8982a7491dbbf7324d4a7b2a /includes/Wiki.php | |
parent | 1b65fa2a5f4c48b02ceda934e9c1aee2d03ce453 (diff) |
Update to MediaWiki 1.22.3
Diffstat (limited to 'includes/Wiki.php')
-rw-r--r-- | includes/Wiki.php | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/includes/Wiki.php b/includes/Wiki.php index ae75bf33..074ec1ab 100644 --- a/includes/Wiki.php +++ b/includes/Wiki.php @@ -653,12 +653,19 @@ class MediaWiki { } if ( !wfShellExecDisabled() && is_executable( $wgPhpCli ) ) { - // Start a background process to run some of the jobs. - // This will be asynchronous on *nix though not on Windows. + // Start a background process to run some of the jobs wfProfileIn( __METHOD__ . '-exec' ); $retVal = 1; $cmd = wfShellWikiCmd( "$IP/maintenance/runJobs.php", array( '--maxjobs', $n ) ); - wfShellExec( "$cmd &", $retVal ); + $cmd .= " >" . wfGetNull() . " 2>&1"; // don't hang PHP on pipes + if ( wfIsWindows() ) { + // Using START makes this async and also works around a bug where using + // wfShellExec() with a quoted script name causes a filename syntax error. + $cmd = "START /B \"bg\" $cmd"; + } else { + $cmd = "$cmd &"; + } + wfShellExec( $cmd, $retVal ); wfProfileOut( __METHOD__ . '-exec' ); } else { try { |