MCPcopy Index your code
hub / github.com/git/git / migrate_paths

Function migrate_paths

tmp-objdir.c:258–289  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

256}
257
258static int migrate_paths(struct tmp_objdir *t,
259 struct strbuf *src, struct strbuf *dst,
260 enum finalize_object_file_flags flags)
261{
262 size_t src_len = src->len, dst_len = dst->len;
263 struct string_list paths = STRING_LIST_INIT_DUP;
264 int ret = 0;
265
266 if (read_dir_paths(&paths, src->buf) < 0)
267 return -1;
268 paths.cmp = pack_copy_cmp;
269 string_list_sort(&paths);
270
271 for (size_t i = 0; i < paths.nr; i++) {
272 const char *name = paths.items[i].string;
273 enum finalize_object_file_flags flags_copy = flags;
274
275 strbuf_addf(src, "/%s", name);
276 strbuf_addf(dst, "/%s", name);
277
278 if (is_loose_object_shard(name))
279 flags_copy |= FOF_SKIP_COLLISION_CHECK;
280
281 ret |= migrate_one(t, src, dst, flags_copy);
282
283 strbuf_setlen(src, src_len);
284 strbuf_setlen(dst, dst_len);
285 }
286
287 string_list_clear(&paths, 0);
288 return ret;
289}
290
291int tmp_objdir_migrate(struct tmp_objdir *t)
292{

Callers 2

migrate_oneFunction · 0.85
tmp_objdir_migrateFunction · 0.85

Calls 7

read_dir_pathsFunction · 0.85
strbuf_addfFunction · 0.85
is_loose_object_shardFunction · 0.85
migrate_oneFunction · 0.85
strbuf_setlenFunction · 0.85
string_list_clearFunction · 0.85
string_list_sortFunction · 0.70

Tested by

no test coverage detected