Commit Diff


commit - fd8b4acb31083b84aa6c11e7d87a13c09c4a73f2
commit + 39b829747f18e3f29fe9a14487752d62711b1c0e
blob - 51afc733bf8b2a7ca98cf0412cbe83cfa19c7f26
blob + b56d9cafacf9c2ef80cdf8a02fa3161cbbffc6b6
--- lib/privsep.c
+++ lib/privsep.c
@@ -1470,7 +1470,8 @@ send_tree_entries(struct imsgbuf *ibuf, struct got_par
 	i = 0;
 	for (j = 0; j < nentries; j++) {
 		struct got_parsed_tree_entry *pte = &entries[j];
-		size_t len = sizeof(*pte) + pte->namelen;
+		size_t len = SHA1_DIGEST_LENGTH + sizeof(pte->mode) +
+		    sizeof(pte->namelen) + pte->namelen;
 
 		if (j > 0 &&
 		    entries_len + len > MAX_IMSGSIZE - IMSG_HEADER_SIZE) {