This is take two of my attempt at making almost all `struct lock_file`s non-static. All patches have been equipped with more detailed commit messages. The only diff that has changed is patch 3/5, where I now take a small step towards gentle error-handling, rather than going in the opposite direction. Thanks all for the valuable feedback on v1. I could have saved everyone some trouble by writing better commit messages from the start, and probably also by using `--thread` when formatting the patches... Martin Martin Ågren (5): t/helper/test-write-cache: clean up lock-handling refs.c: do not die if locking fails in `write_pseudoref()` refs.c: do not die if locking fails in `delete_pseudoref()` lock_file: make function-local locks non-static lock_file: move static locks into functions t/helper/test-scrap-cache-tree.c | 4 ++-- t/helper/test-write-cache.c | 14 +++++--------- apply.c | 2 +- builtin/add.c | 3 +-- builtin/describe.c | 2 +- builtin/difftool.c | 2 +- builtin/gc.c | 2 +- builtin/merge.c | 4 ++-- builtin/mv.c | 2 +- builtin/read-tree.c | 3 +-- builtin/receive-pack.c | 2 +- builtin/rm.c | 3 +-- bundle.c | 2 +- fast-import.c | 2 +- refs.c | 16 +++++++++------- refs/files-backend.c | 2 +- rerere.c | 3 +-- shallow.c | 2 +- 18 files changed, 32 insertions(+), 38 deletions(-) -- 2.17.0.411.g9fd64c8e46