fix imports for non-GHC
[haskell-directory.git] / System / Directory.hs
index e7affb6..d5d54e8 100644 (file)
@@ -70,6 +70,7 @@ import Prelude hiding ( catch )
 
 import System.Environment      ( getEnv )
 import System.FilePath
+import System.IO
 import System.IO.Error hiding ( catch, try )
 import Control.Monad           ( when, unless )
 import Control.Exception
@@ -92,7 +93,6 @@ import Foreign.C
 import System.Posix.Types
 import System.Posix.Internals
 import System.Time             ( ClockTime(..) )
-import System.IO
 
 import GHC.IOBase      ( IOException(..), IOErrorType(..), ioException )
 
@@ -553,7 +553,7 @@ copyFile fromFPath toFPath =
                  bracketOnError openTmp cleanTmp $ \(tmpFPath, hTmp) ->
                  do allocaBytes bufferSize $ copyContents hFrom hTmp
                     hClose hTmp
-                    try (copyPermissions fromFPath toFPath)
+                    try (copyPermissions fromFPath tmpFPath)
                     renameFile tmpFPath toFPath
           openTmp = openBinaryTempFile (takeDirectory toFPath) ".copyFile.tmp"
           cleanTmp (tmpFPath, hTmp) = do try $ hClose hTmp