aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2012-12-14 16:28:27 -0400
committerGravatar Joey Hess <joey@kitenet.net>2012-12-14 16:28:27 -0400
commit91f588ab62abedafa53b0b4432f811d0974cf979 (patch)
tree45472bdc0dd3c12f1bc86384238fcb437f26e7e5
parent3780a5eb0a01e3d31fc0de2410f7b01518710a0e (diff)
kqueue: Fix bug that made broken symlinks not be noticed.
-rw-r--r--Utility/Kqueue.hs2
-rw-r--r--debian/changelog6
-rw-r--r--doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files.mdwn4
3 files changed, 10 insertions, 2 deletions
diff --git a/Utility/Kqueue.hs b/Utility/Kqueue.hs
index f9f965f6f..f0559e531 100644
--- a/Utility/Kqueue.hs
+++ b/Utility/Kqueue.hs
@@ -80,7 +80,7 @@ getDirInfo dir = do
return $ DirInfo dir contents
where
getDirEnt f = catchMaybeIO $ do
- s <- getFileStatus (dir </> f)
+ s <- getSymbolicLinkStatus (dir </> f)
return $ DirEnt f (fileID s) (isDirectory s)
{- Difference between the dirCaches of two DirInfos. -}
diff --git a/debian/changelog b/debian/changelog
index ec9b9f6e3..a0dd005d1 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+git-annex (3.20121212) UNRELEASED; urgency=low
+
+ * kqueue: Fix bug that made broken symlinks not be noticed.
+
+ -- Joey Hess <joeyh@debian.org> Fri, 14 Dec 2012 16:25:14 -0400
+
git-annex (3.20121211) unstable; urgency=low
* webapp: Defaults to sharing box.com account info with friends, allowing
diff --git a/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files.mdwn b/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files.mdwn
index 4c92623f8..d009b55cd 100644
--- a/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files.mdwn
+++ b/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files.mdwn
@@ -63,4 +63,6 @@ One compiled using cabal from checkout 739c937
Please provide any additional information below.
-
+> [[fixed|done]]; this turned out to be an kqueue specific bug,
+> the kqueue code statted new files, but that files for a broken symlink.
+> Using lstat instead fixed this. --[[Joey]]