reftable/merged: refactor initialization of iterators
Refactor the initialization of the merged iterator to fit our code style better. This refactoring prepares the code for a refactoring of how records are being initialized. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
59f302ca5a
commit
62d3c8e8c8
@ -19,24 +19,23 @@ https://developers.google.com/open-source/licenses/bsd
|
|||||||
|
|
||||||
static int merged_iter_init(struct merged_iter *mi)
|
static int merged_iter_init(struct merged_iter *mi)
|
||||||
{
|
{
|
||||||
int i = 0;
|
for (size_t i = 0; i < mi->stack_len; i++) {
|
||||||
for (i = 0; i < mi->stack_len; i++) {
|
struct pq_entry e = {
|
||||||
struct reftable_record rec = reftable_new_record(mi->typ);
|
.rec = reftable_new_record(mi->typ),
|
||||||
int err = iterator_next(&mi->stack[i], &rec);
|
.index = i,
|
||||||
if (err < 0) {
|
};
|
||||||
return err;
|
int err;
|
||||||
}
|
|
||||||
|
|
||||||
|
err = iterator_next(&mi->stack[i], &e.rec);
|
||||||
|
if (err < 0)
|
||||||
|
return err;
|
||||||
if (err > 0) {
|
if (err > 0) {
|
||||||
reftable_iterator_destroy(&mi->stack[i]);
|
reftable_iterator_destroy(&mi->stack[i]);
|
||||||
reftable_record_release(&rec);
|
reftable_record_release(&e.rec);
|
||||||
} else {
|
continue;
|
||||||
struct pq_entry e = {
|
|
||||||
.rec = rec,
|
|
||||||
.index = i,
|
|
||||||
};
|
|
||||||
merged_iter_pqueue_add(&mi->pq, &e);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
merged_iter_pqueue_add(&mi->pq, &e);
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
Reference in New Issue
Block a user