On 9/20/2022 4:40 PM, Taylor Blau wrote: > + for (i = 0; i < m->num_packs; i++) { > + struct repack_info *info = &pack_info[i]; > > - if (!include_pack[pack_int_id]) > - continue; ... > + fprintf(cmd_in, "%s%s\n", include_pack[info->pack_int_id] ? "" : "^", scratch.buf); Outside of how the object set is provided (a list of objects or a list of packs) it seems this is equivalent. The only difference is that we are writing a line for _every_ pack in the multi-pack-index, but we preface the line with "^" to say "not this pack". Do you know if there is any reason to do this explicitly? Does this change the set of objects in any way (perhaps by not including duplicates that are tracked in those other packs)? Personally, I would have kept the "if (...) continue;" pattern, so maybe you had a concrete idea why this approach is better. Thanks, -Stolee