Work around statfs() overflow on some XFS systems.
statfs(".", 0xffa8ad50) = -1 EOVERFLOW (Value too large for defined data type) Ref <20141222221621.GO7251@onerussian.com>
This commit is contained in:
parent
db27ad26bf
commit
02f150b33d
2 changed files with 5 additions and 1 deletions
|
@ -21,6 +21,7 @@ import Control.Applicative
|
|||
import qualified System.FilePath.Posix as Posix
|
||||
#else
|
||||
import System.Posix.Files
|
||||
import Utility.Exception
|
||||
#endif
|
||||
|
||||
import qualified "MissingH" System.Path as MissingH
|
||||
|
@ -255,7 +256,9 @@ fileNameLengthLimit :: FilePath -> IO Int
|
|||
fileNameLengthLimit _ = return 255
|
||||
#else
|
||||
fileNameLengthLimit dir = do
|
||||
l <- fromIntegral <$> getPathVar dir FileNameLimit
|
||||
-- getPathVar can fail due to statfs(2) overflow
|
||||
l <- catchDefaultIO 0 $
|
||||
fromIntegral <$> getPathVar dir FileNameLimit
|
||||
if l <= 0
|
||||
then return 255
|
||||
else return $ minimum [l, 255]
|
||||
|
|
1
debian/changelog
vendored
1
debian/changelog
vendored
|
@ -1,6 +1,7 @@
|
|||
git-annex (5.20141220) UNRELEASED; urgency=medium
|
||||
|
||||
* vicfg: Avoid crashing on badly encoded config data.
|
||||
* Work around statfs() overflow on some XFS systems.
|
||||
|
||||
-- Joey Hess <id@joeyh.name> Mon, 22 Dec 2014 15:16:38 -0400
|
||||
|
||||
|
|
Loading…
Reference in a new issue