Fix encoding of utf-8 etc when storing the description of repository and other content.

Write files in raw mode, to avoid mangling the encoding of content
provided.

Note: This was a longstanding problem, it was not introduced in v3.
This commit is contained in:
Joey Hess 2011-06-30 00:35:51 -04:00
parent b089fba7b4
commit d72fb5acc2
2 changed files with 4 additions and 1 deletions

View file

@ -26,6 +26,7 @@ import System.Cmd.Utils
import Data.Maybe import Data.Maybe
import Data.List import Data.List
import System.IO import System.IO
import System.IO.Binary
import qualified Data.ByteString.Char8 as B import qualified Data.ByteString.Char8 as B
import Types.BranchState import Types.BranchState
@ -287,7 +288,7 @@ setJournalFile file content = do
write g = do write g = do
let jfile = journalFile g file let jfile = journalFile g file
let tmpfile = gitAnnexTmpDir g </> takeFileName jfile let tmpfile = gitAnnexTmpDir g </> takeFileName jfile
writeFile tmpfile content writeBinaryFile tmpfile content
renameFile tmpfile jfile renameFile tmpfile jfile
{- Gets journalled content for a file in the branch. -} {- Gets journalled content for a file in the branch. -}

2
debian/changelog vendored
View file

@ -6,6 +6,8 @@ git-annex (3.20110625) UNRELEASED; urgency=low
* Sped back up fsck, copy --from, and other commands that often * Sped back up fsck, copy --from, and other commands that often
have to read a lot of information from the git-annex branch. Should have to read a lot of information from the git-annex branch. Should
now be nearly as fast as before the branch was introduced. now be nearly as fast as before the branch was introduced.
* Fix encoding of utf-8 etc when storing the description of repository
and other content.
-- Joey Hess <joeyh@debian.org> Sun, 26 Jun 2011 21:01:06 -0400 -- Joey Hess <joeyh@debian.org> Sun, 26 Jun 2011 21:01:06 -0400