diff options
author | 2014-01-28 16:01:19 -0400 | |
---|---|---|
committer | 2014-01-28 16:43:11 -0400 | |
commit | b037f324aa531201a8ef6d1b4dc56efed622a12e (patch) | |
tree | b0ad70c3772c4663048f044062e8e0cd5d4d8238 /Git/Ref.hs | |
parent | bbbc725c45f0b25c8da92d002a0ca3ffd2b8efdc (diff) |
rework annexed object locking in direct mode & support Windows
Seems that locking of annexed objects when they're being dropped was broken
in direct mode:
* When taking the lock before dropping, it created the .git/annex/objects
file, as an empty file. It seems that the dropping code deleted that,
but that is not right, and for all I know could in some situation cause
a corrupted object to leak out.
* When the lock was checked, it actually tried to open each direct mode
file, and checked if it was locked. Not the same lock used above, and
could also fail if some consumer of the file locked it.
Fixed this, and added windows support by switching direct mode to lock a
.lck file.
Diffstat (limited to 'Git/Ref.hs')
0 files changed, 0 insertions, 0 deletions