diff --git a/unpack-trees.c b/unpack-trees.c
index 73a1cdb43e..2253c91042 100644
--- a/unpack-trees.c
+++ b/unpack-trees.c
@@ -390,6 +390,7 @@ static int check_updates(struct unpack_trees_options *o)
 			fetch_objects(repository_format_partial_clone,
 				      &to_fetch);
 		fetch_if_missing = fetch_if_missing_store;
+		oid_array_clear(&to_fetch);
 	}
 	for (i = 0; i < index->cache_nr; i++) {
 		struct cache_entry *ce = index->cache[i];