diff options
| author | Christian Weiske <cweiske@cweiske.de> | 2017-04-19 18:33:22 +0200 |
|---|---|---|
| committer | Christian Weiske <cweiske@cweiske.de> | 2017-04-19 18:33:22 +0200 |
| commit | ade89bd51686796f30dc26b0f5c65eb9b6f66f21 (patch) | |
| tree | cbdd90e941891510a3206f387ca6ba0a10b9850d /src | |
| parent | 8a4d28fa14e4b0053d5fb9753535124b6bcbfe5e (diff) | |
| download | phorkie-ade89bd51686796f30dc26b0f5c65eb9b6f66f21.tar.gz phorkie-ade89bd51686796f30dc26b0f5c65eb9b6f66f21.zip | |
Do not crash list view when seeing a fully empty git repository
This is not a good way to handle it, but makes phorkie more resilient
against invalid data.
Resolves: https://github.com/cweiske/phorkie/issues/24
Diffstat (limited to 'src')
| -rw-r--r-- | src/phorkie/Repositories.php | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/phorkie/Repositories.php b/src/phorkie/Repositories.php index 729ff23..ab97c56 100644 --- a/src/phorkie/Repositories.php +++ b/src/phorkie/Repositories.php @@ -65,7 +65,16 @@ class Repositories $repos = array(); foreach ($some as $oneDir) { $r = new Repository(); - $r->loadById(substr($oneDir, 0, -4)); + try { + $r->loadById(substr($oneDir, 0, -4)); + } catch (\VersionControl_Git_Exception $e) { + if (strpos($e->getMessage(), 'does not have any commits') !== false) { + //the git repo is broken as the initial commit + // has not been finished + continue; + } + throw $e; + } $repos[] = $r; } return array($repos, count($dirs), $page); |
