unused: Fix crash when file names contain invalid utf8.
Was decoding the git-cat-file of the symlink target as utf8, but that can't do, unix filenames are from the 70's and need this shiny disco fileSystemEncoding.
This commit is contained in:
parent
ee2acd474f
commit
dfccee2616
2 changed files with 5 additions and 4 deletions
|
@ -10,8 +10,7 @@
|
||||||
module Command.Unused where
|
module Command.Unused where
|
||||||
|
|
||||||
import qualified Data.Set as S
|
import qualified Data.Set as S
|
||||||
import qualified Data.Text.Lazy as L
|
import qualified Data.ByteString.Lazy as L
|
||||||
import qualified Data.Text.Lazy.Encoding as L
|
|
||||||
import Data.BloomFilter
|
import Data.BloomFilter
|
||||||
import Data.BloomFilter.Easy
|
import Data.BloomFilter.Easy
|
||||||
import Data.BloomFilter.Hash
|
import Data.BloomFilter.Hash
|
||||||
|
@ -265,8 +264,9 @@ withKeysReferencedInGitRef a ref = do
|
||||||
go [] = noop
|
go [] = noop
|
||||||
go (l:ls)
|
go (l:ls)
|
||||||
| isSymLink (LsTree.mode l) = do
|
| isSymLink (LsTree.mode l) = do
|
||||||
content <- L.decodeUtf8 <$> catFile ref (LsTree.file l)
|
content <- encodeW8 . L.unpack
|
||||||
case fileKey (takeFileName $ L.unpack content) of
|
<$> catFile ref (LsTree.file l)
|
||||||
|
case fileKey (takeFileName content) of
|
||||||
Nothing -> go ls
|
Nothing -> go ls
|
||||||
Just k -> do
|
Just k -> do
|
||||||
a k
|
a k
|
||||||
|
|
1
debian/changelog
vendored
1
debian/changelog
vendored
|
@ -4,6 +4,7 @@ git-annex (3.20120616) UNRELEASED; urgency=low
|
||||||
files and automatically annexes new files, etc, so you don't need
|
files and automatically annexes new files, etc, so you don't need
|
||||||
to manually run git commands when manipulating files.
|
to manually run git commands when manipulating files.
|
||||||
* Enable diskfree on kfreebsd, using statvfs.
|
* Enable diskfree on kfreebsd, using statvfs.
|
||||||
|
* unused: Fix crash when key names contain invalid utf8.
|
||||||
|
|
||||||
-- Joey Hess <joeyh@debian.org> Tue, 12 Jun 2012 11:35:59 -0400
|
-- Joey Hess <joeyh@debian.org> Tue, 12 Jun 2012 11:35:59 -0400
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue