Browse files

decorate.c: compact table when growing

When growing the table, take the opportunity to "compact" it by removing
entries with NULL decoration.

Users may have "removed" decorations by passing NULL to
insert_decoration. An object's table entry can't actually be removed
during normal operation, as it would break the linear hash collision
search. But we can remove NULL decoration entries when rebuilding the

Signed-off-by: Kevin Bracey <>
Signed-off-by: Junio C Hamano <>
  • Loading branch information...
1 parent a765499 commit 83f0412f3fff3b4108e7f05c30f3e861d148f5f2 Kevin Bracey committed with gitster May 16, 2013
Showing with 1 addition and 1 deletion.
  1. +1 −1 decorate.c
2 decorate.c
@@ -49,7 +49,7 @@ static void grow_decoration(struct decoration *n)
const struct object *base = old_hash[i].base;
void *decoration = old_hash[i].decoration;
- if (!base)
+ if (!decoration)
insert_decoration(n, base, decoration);

0 comments on commit 83f0412

Please sign in to comment.