$cmd[] = $options['wrapper'];
}
$cmd[] = $script;
- // Build up the full command, shell escaping each parameter
- return implode( ' ', array_merge( $cmd, array_map( 'wfEscapeShellArg', $parameters ) ) );
+ // Escape each parameter for shell
+ return implode( " ", array_map( 'wfEscapeShellArg', array_merge( $cmd, $parameters ) ) );
}
/**
global $wgPhpCli;
return array(
array( 'eval.php', array( '--help', '--test' ), array(),
- "$wgPhpCli eval.php '--help' '--test'",
+ "'$wgPhpCli' 'eval.php' '--help' '--test'",
"Called eval.php --help --test" ),
array( 'eval.php', array( '--help', '--test space' ), array('php' => 'php5'),
- "php5 eval.php '--help' '--test space'",
+ "'php5' 'eval.php' '--help' '--test space'",
"Called eval.php --help --test with php option" ),
array( 'eval.php', array( '--help', '--test', 'X' ), array('wrapper' => 'MWScript.php'),
- "$wgPhpCli MWScript.php eval.php '--help' '--test' 'X'",
+ "'$wgPhpCli' 'MWScript.php' 'eval.php' '--help' '--test' 'X'",
"Called eval.php --help --test with wrapper option" ),
array( 'eval.php', array( '--help', '--test', 'y' ), array('php' => 'php5', 'wrapper' => 'MWScript.php'),
- "php5 MWScript.php eval.php '--help' '--test' 'y'",
+ "'php5' 'MWScript.php' 'eval.php' '--help' '--test' 'y'",
"Called eval.php --help --test with wrapper and php option" ),
);
}