diff options
author | sterni <sternenseemann@systemli.org> | 2021-02-17T22·48+0100 |
---|---|---|
committer | sterni <sternenseemann@systemli.org> | 2021-02-18T00·07+0000 |
commit | 2469f0b423518ef4bee1641f04c3283bed374567 (patch) | |
tree | bfed6fbff4405243e32f3b9f46780579e43f9cff /third_party/git/tree.c | |
parent | fa99c128f806d5015b6f4c31585c78f76a5e07df (diff) |
fix(nix/readTree): make nixFileName only match .nix extensions r/2218
Nix unfortunately has terrible escaping syntax: If something is an escape sequence it does not know, like \0, it just swallows the backslash and returns the second character (byte) as is (yes, "\0" == "0" is true). This created the following bug in nixFileName which should have resulted in at least a parse error: "(.*)\.nix" is the same as "(.*).nix" which meant that nixFileName matched anything that is at least 4 characters long and ends in "nix". This lead to readTree creating double attributes when directories are involved or attributes for non-nix files. Change-Id: Ibf3be2bd189d48881c82ee795c50151bfb365627 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2535 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
Diffstat (limited to 'third_party/git/tree.c')
0 files changed, 0 insertions, 0 deletions