| 703 | } |
| 704 | |
| 705 | static int reftable_ref_iterator_seek(struct ref_iterator *ref_iterator, |
| 706 | const char *refname, unsigned int flags) |
| 707 | { |
| 708 | struct reftable_ref_iterator *iter = |
| 709 | (struct reftable_ref_iterator *)ref_iterator; |
| 710 | |
| 711 | /* Unset any previously set prefix */ |
| 712 | FREE_AND_NULL(iter->prefix); |
| 713 | iter->prefix_len = 0; |
| 714 | |
| 715 | if (flags & REF_ITERATOR_SEEK_SET_PREFIX) { |
| 716 | iter->prefix = xstrdup_or_null(refname); |
| 717 | iter->prefix_len = refname ? strlen(refname) : 0; |
| 718 | } |
| 719 | iter->err = reftable_iterator_seek_ref(&iter->iter, refname); |
| 720 | |
| 721 | return iter->err; |
| 722 | } |
| 723 | |
| 724 | static void reftable_ref_iterator_release(struct ref_iterator *ref_iterator) |
| 725 | { |
no test coverage detected