diff options
author | Petr Baudis <pasky@ucw.cz> | 2005-05-08 16:15:59 +0200 |
---|---|---|
committer | Petr Baudis <xpasky@machine.sinus.cz> | 2005-05-08 16:15:59 +0200 |
commit | c899350e9dbe8700ad3c945b9743e9472732684b (patch) | |
tree | 7ef7b783d667f8ea59eebd11ced380b496941837 /write-tree.c | |
parent | 8c59926f5e00082a4cbf1d9f31275917c5f7f001 (diff) | |
download | git-c899350e9dbe8700ad3c945b9743e9472732684b.tar.gz git-c899350e9dbe8700ad3c945b9743e9472732684b.tar.xz |
write-tree is now willing to write empty tree
Cogito wants to be able to do some initial commit at the time of cg-init,
which may be empty in case when cg-init is called in an empty tree.
Diffstat (limited to 'write-tree.c')
-rw-r--r-- | write-tree.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/write-tree.c b/write-tree.c index 168352853..d801d7fbe 100644 --- a/write-tree.c +++ b/write-tree.c @@ -30,7 +30,7 @@ static int write_tree(struct cache_entry **cachep, int maxentries, const char *b offset = 0; nr = 0; - do { + while (nr < maxentries) { struct cache_entry *ce = cachep[nr]; const char *pathname = ce->name, *filename, *dirname; int pathlen = ce_namelen(ce), entrylen; @@ -75,7 +75,7 @@ static int write_tree(struct cache_entry **cachep, int maxentries, const char *b memcpy(buffer + offset, sha1, 20); offset += 20; nr++; - } while (nr < maxentries); + } write_sha1_file(buffer, offset, "tree", returnsha1); free(buffer); @@ -88,8 +88,8 @@ int main(int argc, char **argv) int entries = read_cache(); unsigned char sha1[20]; - if (entries <= 0) - die("write-tree: no cache contents to write"); + if (entries < 0) + die("write-tree: error reading cache"); /* Verify that the tree is merged */ unmerged = 0; |