X-Git-Url: https://git.cyclocoop.org/%7B%24www_url%7Dadmin/compta/exercices/bilan.php?a=blobdiff_plain;f=maintenance%2Fmwdocgen.php;h=94472683df0919744f41f0d32cfc91226f955042;hb=9e34eeff23fdd46a8e9bddfbab39d45eab232827;hp=dc2eccd080ab125d4c22ee8a359721a7163e1e4c;hpb=734ca2b4d2a1246fb0ea1e54b861ab423ab5e257;p=lhc%2Fweb%2Fwiklou.git diff --git a/maintenance/mwdocgen.php b/maintenance/mwdocgen.php index dc2eccd080..94472683df 100644 --- a/maintenance/mwdocgen.php +++ b/maintenance/mwdocgen.php @@ -72,7 +72,7 @@ class MWDocGen extends Maintenance { } protected function init() { - global $IP; + global $wgPhpCli, $IP; $this->doxygen = $this->getOption( 'doxygen', 'doxygen' ); $this->mwVersion = $this->getOption( 'version', 'master' ); @@ -86,7 +86,13 @@ class MWDocGen extends Maintenance { $this->output = $this->getOption( 'output', "$IP/docs" ); - $this->inputFilter = wfShellWikiCmd( $IP . '/maintenance/mwdoc-filter.php' ); + // Do not use wfShellWikiCmd, because mwdoc-filter.php is not + // a Maintenance script. + $this->inputFilter = wfEscapeShellArg( [ + $wgPhpCli, + $IP . '/maintenance/mwdoc-filter.php' + ] ); + $this->template = $IP . '/maintenance/Doxyfile'; $this->excludes = [ 'vendor', @@ -99,7 +105,7 @@ class MWDocGen extends Maintenance { $this->excludePatterns[] = 'extensions'; } - $this->doDot = `which dot`; + $this->doDot = shell_exec( 'which dot' ); $this->doMan = $this->hasOption( 'generate-man' ); } @@ -132,8 +138,7 @@ class MWDocGen extends Maintenance { $tmpFile = tempnam( wfTempDir(), 'MWDocGen-' ); if ( file_put_contents( $tmpFile, $conf ) === false ) { - $this->error( "Could not write doxygen configuration to file $tmpFile\n", - /** exit code: */ 1 ); + $this->fatalError( "Could not write doxygen configuration to file $tmpFile\n" ); } $command = $this->doxygen . ' ' . $tmpFile; @@ -155,8 +160,7 @@ TEXT ); if ( $exitcode !== 0 ) { - $this->error( "Something went wrong (exit: $exitcode)\n", - $exitcode ); + $this->fatalError( "Something went wrong (exit: $exitcode)\n", $exitcode ); } } }