diff options
author | Joey Hess <joeyh@joeyh.name> | 2015-12-07 12:29:34 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2015-12-07 12:29:34 -0400 |
commit | 6a44b7716aa702a068b301cc8608c0116a5cd90f (patch) | |
tree | 8773d46c1bd73117cfd09857dcc28ad74554f9b5 /Annex | |
parent | cf9af38cf75618e2953c5b537d8f7c1fe353aa63 (diff) | |
parent | 4542ddaf4e58da6d02d41e6365d68506df8ccd4c (diff) |
Merge branch 'master' into smudge
Diffstat (limited to 'Annex')
-rw-r--r-- | Annex/ReplaceFile.hs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Annex/ReplaceFile.hs b/Annex/ReplaceFile.hs index b090da905..94d2688a1 100644 --- a/Annex/ReplaceFile.hs +++ b/Annex/ReplaceFile.hs @@ -27,9 +27,10 @@ replaceFile :: FilePath -> (FilePath -> Annex ()) -> Annex () replaceFile file action = do misctmpdir <- fromRepo gitAnnexTmpMiscDir void $ createAnnexDirectory misctmpdir - let basetmp = takeFileName file + filemax <- liftIO $ fileNameLengthLimit misctmpdir + let basetmp = take (filemax `div` 2) (takeFileName file) withTmpDirIn misctmpdir basetmp $ \tmpdir -> do - let tmpfile = tmpdir <> basetmp + let tmpfile = tmpdir </> basetmp action tmpfile liftIO $ replaceFileFrom tmpfile file |