File tree Expand file tree Collapse file tree 1 file changed +6
-2
lines changed
System/File/AbstractFilePath Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ import System.AbstractFilePath.Windows ( WindowsFilePath )
8
8
9
9
import qualified System.Win32 as Win32
10
10
import qualified System.Win32.WindowsString.File as WS
11
+ import Control.Monad (when , void )
11
12
#if defined(__IO_MANAGER_WINIO__)
12
13
import GHC.IO.SubSystem
13
14
#endif
@@ -31,12 +32,15 @@ openFile fp iomode = bracketOnError
31
32
#endif
32
33
Nothing )
33
34
Win32. closeHandle
34
- Win32. hANDLEToHandle
35
+ toHandle
35
36
where
37
+ toHandle h = do
38
+ when (iomode == AppendMode ) $ void $ Win32. setFilePointerEx h 0 Win32. fILE_END
39
+ Win32. hANDLEToHandle h
36
40
accessMode = case iomode of
37
41
ReadMode -> Win32. gENERIC_READ
38
42
WriteMode -> Win32. gENERIC_WRITE
39
- AppendMode -> Win32. fILE_APPEND_DATA
43
+ AppendMode -> Win32. gENERIC_WRITE .|. Win32. fILE_APPEND_DATA
40
44
ReadWriteMode -> Win32. gENERIC_READ .|. Win32. gENERIC_WRITE
41
45
42
46
createMode = case iomode of
You can’t perform that action at this time.
0 commit comments