The first patch is a re-roll of Peff's patch from 2014 -- here's the archive message: http://git.661346.n2.nabble.com/PATCH-tree-walk-be-more-specific-about-corrupt-tree-errors-td7603558.html Not sure why this wasn't applied then, but I thought it looked pretty good, so I added a few tests. Hopefully the encoding works correctly on these patches. If not, you can fetch from https://github.com/novalis/git/ on branch dturner/bad-trees Email address note 1: my employer wants me to use my company address, but not my company computer, for patches I write on work time. This means that I'm going to continue corresponding from novalis@xxxxxxxxxxx, but will send patches with the @twosigma.com address in the author line. Email address note 2: I'm not subscribed to the mailing list these days, so please CC me (at novalis@xxxxxxxxxxx) on replies. David Turner (1): fsck: handle bad trees like other errors Jeff King (1): tree-walk: be more specific about corrupt tree errors fsck.c | 18 +++-- t/t1007-hash-object.sh | 15 +++- t/t1007/tree-with-empty-filename | Bin 0 -> 28 bytes t/t1007/tree-with-malformed-mode | Bin 0 -> 39 bytes t/t1450-fsck.sh | 17 ++++- .../307e300745b82417cc1a903f875c7d22e45ef907 | 4 + .../f506a346749bb96f52d8605ffba9fb93d46b5ffd | Bin 0 -> 45 bytes tree-walk.c | 83 ++++++++++++++++++--- tree-walk.h | 8 ++ 9 files changed, 125 insertions(+), 20 deletions(-) create mode 100644 t/t1007/tree-with-empty-filename create mode 100644 t/t1007/tree-with-malformed-mode create mode 100644 t/t1450/bad-objects/307e300745b82417cc1a903f875c7d22e45ef907 create mode 100644 t/t1450/bad-objects/f506a346749bb96f52d8605ffba9fb93d46b5ffd -- 2.8.0.rc4.22.g8ae061a