From c253b2f96b5230c73d27407ca70f2f33b505fb3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Prochowski?= Date: Wed, 4 Jul 2012 17:02:06 +0200 Subject: [PATCH] Fix warnings: - Warning: parse_ini_file(config.ini) [function.parse-ini-file]: failed to open stream: No such file or directory in /home/mablo/www/gitlist/index.php on line 8 - Warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(/home/mablo/git/index.php/.git/HEAD) is not within the allowed path(s): (/usr/local/php5) in /home/mablo/www/gitlist/lib/Git/Client.php on line 90 --- index.php | 4 ++++ lib/Git/Client.php | 40 +++++++++++++++++++++------------------- 2 files changed, 25 insertions(+), 19 deletions(-) diff --git a/index.php b/index.php index c9147cf..52bb1fc 100644 --- a/index.php +++ b/index.php @@ -5,6 +5,10 @@ * https://github.com/klaussilveira/gitlist */ +if (!file_exists('config.ini')) { + die("Please, create the config.ini file."); +} + $config = parse_ini_file('config.ini', true); if (empty($config['git']['repositories']) || !is_dir($config['git']['repositories'])) { diff --git a/lib/Git/Client.php b/lib/Git/Client.php index 252e636..b94cc92 100644 --- a/lib/Git/Client.php +++ b/lib/Git/Client.php @@ -85,28 +85,30 @@ class Client continue; } - $isBare = file_exists($file->getPathname() . '/HEAD'); - $isRepository = file_exists($file->getPathname() . '/.git/HEAD'); + if ($file->isDir()) { + $isBare = file_exists($file->getPathname() . '/HEAD'); + $isRepository = file_exists($file->getPathname() . '/.git/HEAD'); - if ($file->isDir() && $isRepository || $isBare) { - if (in_array($file->getPathname(), $this->app['hidden'])) { + if ($isRepository || $isBare) { + if (in_array($file->getPathname(), $this->app['hidden'])) { + continue; + } + + if ($isBare) { + $description = $file->getPathname() . '/description'; + } else { + $description = $file->getPathname() . '/.git/description'; + } + + if (file_exists($description)) { + $description = file_get_contents($description); + } else { + $description = 'There is no repository description file. Please, create one to remove this message.'; + } + + $repositories[] = array('name' => $file->getFilename(), 'path' => $file->getPathname(), 'description' => $description); continue; } - - if ($isBare) { - $description = $file->getPathname() . '/description'; - } else { - $description = $file->getPathname() . '/.git/description'; - } - - if (file_exists($description)) { - $description = file_get_contents($description); - } else { - $description = 'There is no repository description file. Please, create one to remove this message.'; - } - - $repositories[] = array('name' => $file->getFilename(), 'path' => $file->getPathname(), 'description' => $description); - continue; } }