* @param string $dir The root directory of the repo where the .git dir can be found
*/
public function __construct( $dir ) {
- $this->basedir = "{$dir}/.git";
+ $this->basedir = $dir . DIRECTORY_SEPARATOR . '.git';
if ( is_readable( $this->basedir ) && !is_dir( $this->basedir ) ) {
$GITfile = file_get_contents( $this->basedir );
if ( strlen( $GITfile ) > 8 && substr( $GITfile, 0, 8 ) === 'gitdir: ' ) {
$path = rtrim( substr( $GITfile, 8 ), "\r\n" );
$isAbsolute = $path[0] === '/' || substr( $path, 1, 1 ) === ':';
- $this->basedir = $isAbsolute ? $path : "{$dir}/{$path}";
+ $this->basedir = $isAbsolute ? $path : $dir . DIRECTORY_SEPARATOR . $path;
}
}
}
} else {
return (int)$commitDate;
}
-
- }
+ }
/**
* Return the name of the current branch, or HEAD if not found
return false;
}
+ wfSuppressWarnings();
$configArray = parse_ini_file( $config, true );
+ wfRestoreWarnings();
$remote = false;
// Use the "origin" remote repo if available or any other repo if not.
if ( isset( $configArray['remote origin'] ) ) {
$remote = $configArray['remote origin'];
- } else {
+ } elseif ( is_array( $configArray ) ) {
foreach ( $configArray as $sectionName => $sectionConf ) {
if ( substr( $sectionName, 0, 6 ) == 'remote' ) {
$remote = $sectionConf;