]> git.proxmox.com Git - libgit2.git/commit - src/tree.c
tree: relax the filemode parser
authorCarlos Martín Nieto <cmn@dwim.me>
Fri, 7 Dec 2012 14:16:41 +0000 (15:16 +0100)
committerCarlos Martín Nieto <cmn@dwim.me>
Fri, 7 Dec 2012 15:59:18 +0000 (16:59 +0100)
commitf1c75b94a17a2835f4166c11efe1cb4084bf5388
tree0507db030d492149b8a40bf9c14ab83ee8fcc211
parentfac43c54a6f02d3dbedd11ec228d4cb606a52bff
tree: relax the filemode parser

There are many different broken filemodes in the wild so we need to
protect against them and give something useful up the chain. Don't
fail when reading a tree from the ODB but normalize the mode as best
we can.

As 664 is no longer a mode that we consider to be valid and gets
normalized to 644, we can stop accepting it in the treebuilder. The
library won't expose it to the user, so any invalid modes are a bug.
src/tree.c
tests-clar/object/tree/attributes.c
tests-clar/resources/deprecated-mode.git/objects/08/10fb7818088ff5ac41ee49199b51473b1bd6c7 [new file with mode: 0644]