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

Function process_tree

http-push.c:1304–1340  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1302}
1303
1304static struct object_list **process_tree(struct tree *tree,
1305 struct object_list **p)
1306{
1307 struct object *obj = &tree->object;
1308 struct tree_desc desc;
1309 struct name_entry entry;
1310
1311 obj->flags |= LOCAL;
1312
1313 if (obj->flags & (UNINTERESTING | SEEN))
1314 return p;
1315 if (repo_parse_tree(the_repository, tree) < 0)
1316 die("bad tree object %s", oid_to_hex(&obj->oid));
1317
1318 obj->flags |= SEEN;
1319 p = add_one_object(obj, p);
1320
1321 init_tree_desc(&desc, &tree->object.oid, tree->buffer, tree->size);
1322
1323 while (tree_entry(&desc, &entry))
1324 switch (object_type(entry.mode)) {
1325 case OBJ_TREE:
1326 p = process_tree(lookup_tree(the_repository, &entry.oid),
1327 p);
1328 break;
1329 case OBJ_BLOB:
1330 p = process_blob(lookup_blob(the_repository, &entry.oid),
1331 p);
1332 break;
1333 default:
1334 /* Subproject commit - not in this repository */
1335 break;
1336 }
1337
1338 free_tree_buffer(tree);
1339 return p;
1340}
1341
1342static int get_delta(struct rev_info *revs, struct remote_lock *lock)
1343{

Callers 1

get_deltaFunction · 0.70

Calls 11

repo_parse_treeFunction · 0.85
oid_to_hexFunction · 0.85
init_tree_descFunction · 0.85
lookup_treeFunction · 0.85
lookup_blobFunction · 0.85
free_tree_bufferFunction · 0.85
dieFunction · 0.70
add_one_objectFunction · 0.70
tree_entryFunction · 0.70
object_typeEnum · 0.70
process_blobFunction · 0.70

Tested by

no test coverage detected