diff options
| author | Carlos Martín Nieto <cmn@dwim.me> | 2013-05-04 15:16:55 +0200 |
|---|---|---|
| committer | Carlos Martín Nieto <cmn@dwim.me> | 2013-05-11 11:20:37 +0200 |
| commit | 51fc5e895d7655611431a0bdb76b9fd8499a9e1a (patch) | |
| tree | 0283022040fdd80f065fa79519e01fca5c964da9 /src/refdb.c | |
| parent | 69a3c766b6c6b9bbe2859bf8572c12b93a9d37c9 (diff) | |
| download | libgit2-51fc5e895d7655611431a0bdb76b9fd8499a9e1a.tar.gz | |
Make sure the ref iterator works in an repo without physical presence
Diffstat (limited to 'src/refdb.c')
| -rw-r--r-- | src/refdb.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/refdb.c b/src/refdb.c index 73882e807..269234bfa 100644 --- a/src/refdb.c +++ b/src/refdb.c @@ -128,7 +128,11 @@ int git_refdb_iterator(git_reference_iterator **out, git_refdb *db) { git_reference_iterator *iter; - /* FIXME: don't segfault when there is no backends */ + if (!db->backend || !db->backend->iterator) { + giterr_set(GITERR_REFERENCE, "This backend doesn't support iterators"); + return -1; + } + if (db->backend->iterator(&iter, db->backend) < 0) { git__free(iter); return -1; |
