X-Git-Url: http://git.cyclocoop.org/?a=blobdiff_plain;f=includes%2FGitInfo.php;h=6b092d96c693c6b6c1ed7663330437d308e3ed17;hb=d8545438bfdd2cb4fb5c62c90078d9bd9e8b4c12;hp=e0bd5cd04316d878b1b93718046f684f1b80ef62;hpb=665f171a18061aacd339102a21f32d714c5de50d;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/GitInfo.php b/includes/GitInfo.php index e0bd5cd043..6b092d96c6 100644 --- a/includes/GitInfo.php +++ b/includes/GitInfo.php @@ -44,13 +44,13 @@ class GitInfo { * @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; } } } @@ -82,18 +82,18 @@ class GitInfo { * @return string The HEAD */ public function getHead() { - $HEADfile = "{$this->basedir}/HEAD"; + $headFile = "{$this->basedir}/HEAD"; - if ( !is_readable( $HEADfile ) ) { + if ( !is_readable( $headFile ) ) { return false; } - $HEAD = file_get_contents( $HEADfile ); + $head = file_get_contents( $headFile ); - if ( preg_match( "/ref: (.*)/", $HEAD, $m ) ) { + if ( preg_match( "/ref: (.*)/", $head, $m ) ) { return rtrim( $m[1] ); } else { - return rtrim( $HEAD ); + return rtrim( $head ); } } @@ -102,20 +102,20 @@ class GitInfo { * @return string A SHA1 or false */ public function getHeadSHA1() { - $HEAD = $this->getHead(); + $head = $this->getHead(); // If detached HEAD may be a SHA1 - if ( self::isSHA1( $HEAD ) ) { - return $HEAD; + if ( self::isSHA1( $head ) ) { + return $head; } // If not a SHA1 it may be a ref: - $REFfile = "{$this->basedir}/{$HEAD}"; - if ( !is_readable( $REFfile ) ) { + $refFile = "{$this->basedir}/{$head}"; + if ( !is_readable( $refFile ) ) { return false; } - $sha1 = rtrim( file_get_contents( $REFfile ) ); + $sha1 = rtrim( file_get_contents( $refFile ) ); return $sha1; } @@ -150,11 +150,11 @@ class GitInfo { * @return string The branch name, HEAD, or false */ public function getCurrentBranch() { - $HEAD = $this->getHead(); - if ( $HEAD && preg_match( "#^refs/heads/(.*)$#", $HEAD, $m ) ) { + $head = $this->getHead(); + if ( $head && preg_match( "#^refs/heads/(.*)$#", $head, $m ) ) { return $m[1]; } else { - return $HEAD; + return $head; } } @@ -169,13 +169,15 @@ class GitInfo { 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;