Fix git config parsing, fixes #525
parent
d63c0100ab
commit
278f0ec350
|
@ -323,11 +323,16 @@ EOT
|
|||
$finder = new ExecutableFinder();
|
||||
$gitBin = $finder->find('git');
|
||||
|
||||
$cmd = new Process(sprintf('%s config -l', $gitBin));
|
||||
$cmd = new Process(sprintf('%s config -l', escapeshellarg($gitBin)));
|
||||
$cmd->run();
|
||||
|
||||
if ($cmd->isSuccessful()) {
|
||||
return $this->gitConfig = parse_ini_string($cmd->getOutput(), false, INI_SCANNER_RAW);
|
||||
$this->gitConfig = array();
|
||||
preg_match_all('{^([^=]+)=(.*)$}m', $cmd->getOutput(), $matches, PREG_SET_ORDER);
|
||||
foreach ($matches as $match) {
|
||||
$this->gitConfig[$match[1]] = $match[2];
|
||||
}
|
||||
return $this->gitConfig;
|
||||
}
|
||||
|
||||
return $this->gitConfig = array();
|
||||
|
|
Loading…
Reference in New Issue