refs_ref_iterator_begin(): handle `GIT_REF_PARANOIA`

Instead of handling `GIT_REF_PARANOIA` in `files_ref_iterator_begin()`, handle it in `refs_ref_iterator_begin()`, where it will cover all reference stores. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Michael Haggerty committed May 22, 2017 at 16:17 UTC 0a0865b8f168b7195bd15440d15eb0e7817d6526
2 files changed +9 -7
refs.c
+5
@@ -1259,6 +1259,11 @@ struct ref_iterator *refs_ref_iterator_begin(
1259 {
1260 struct ref_iterator *iter;
1261
1262 + if (ref_paranoia < 0)
1263 + ref_paranoia = git_env_bool("GIT_REF_PARANOIA", 0);
1264 + if (ref_paranoia)
1265 + flags |= DO_FOR_EACH_INCLUDE_BROKEN;
1266 +
1267 iter = refs->be->iterator_begin(refs, prefix, flags);
1268
1269 /*
refs/files-backend.c
+4 -7
@@ -1074,15 +1074,12 @@ static struct ref_iterator *files_ref_iterator_begin(
1074 struct ref_iterator *loose_iter, *packed_iter;
1075 struct files_ref_iterator *iter;
1076 struct ref_iterator *ref_iterator;
1077 + unsigned int required_flags = REF_STORE_READ;
1078
1078 - if (ref_paranoia < 0)
1079 - ref_paranoia = git_env_bool("GIT_REF_PARANOIA", 0);
1080 - if (ref_paranoia)
1081 - flags |= DO_FOR_EACH_INCLUDE_BROKEN;
1079 + if (!(flags & DO_FOR_EACH_INCLUDE_BROKEN))
1080 + required_flags |= REF_STORE_ODB;
1081
1083 - refs = files_downcast(ref_store,
1084 - REF_STORE_READ | (ref_paranoia ? 0 : REF_STORE_ODB),
1085 - "ref_iterator_begin");
1082 + refs = files_downcast(ref_store, required_flags, "ref_iterator_begin");
1083
1084 iter = xcalloc(1, sizeof(*iter));
1085 ref_iterator = &iter->base;