Skip to content

Commit

Permalink
http-push: do not get confused by submodules
Browse files Browse the repository at this point in the history
When encountering submodules in a tree, http-push should not try sending
the respective object.  Instead, it should ignore it.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Johannes Schindelin authored and Junio C Hamano committed Feb 16, 2008
1 parent add8e8c commit 1bbeb4c
Showing 1 changed file with 11 additions and 4 deletions.
15 changes: 11 additions & 4 deletions http-push.c
Original file line number Diff line number Diff line change
Expand Up @@ -1634,12 +1634,19 @@ static struct object_list **process_tree(struct tree *tree,

init_tree_desc(&desc, tree->buffer, tree->size);

while (tree_entry(&desc, &entry)) {
if (S_ISDIR(entry.mode))
while (tree_entry(&desc, &entry))
switch (object_type(entry.mode)) {
case OBJ_TREE:
p = process_tree(lookup_tree(entry.sha1), p, &me, name);
else
break;
case OBJ_BLOB:
p = process_blob(lookup_blob(entry.sha1), p, &me, name);
}
break;
default:
/* Subproject commit - not in this repository */
break;
}

free(tree->buffer);
tree->buffer = NULL;
return p;
Expand Down

0 comments on commit 1bbeb4c

Please sign in to comment.