]> gitweb.factorcode.org Git - factor.git/commitdiff
io.files.windows: drain/refill need destructors
authorJohn Benediktsson <mrjbq7@gmail.com>
Sun, 21 May 2023 02:06:32 +0000 (19:06 -0700)
committerJohn Benediktsson <mrjbq7@gmail.com>
Sun, 21 May 2023 02:06:52 +0000 (19:06 -0700)
basis/io/files/windows/windows.factor

index efc4eb1501f6d113d877a48367ac8b2b1adb8855..d7c848f23fdabe872b8387f76da45ba8e96de2df 100644 (file)
@@ -182,8 +182,10 @@ M: windows handle-length
     [ update-file-ptr ] [ buffer>> buffer-consume ] 2bi ;
 
 M: object drain
-    [ make-FileArgs dup setup-write WriteFile ]
-    [ drop [ wait-for-file ] [ finish-write ] bi ] 2bi f ;
+    [
+        [ make-FileArgs dup setup-write WriteFile ]
+        [ drop [ wait-for-file ] [ finish-write ] bi ] 2bi f
+    ] with-destructors ;
 
 : setup-read ( <FileArgs> -- hFile lpBuffer nNumberOfBytesToRead lpNumberOfBytesRead lpOverlapped )
     {
@@ -197,8 +199,10 @@ M: object drain
     [ update-file-ptr ] [ buffer>> buffer+ ] 2bi ;
 
 M: object refill
-    [ make-FileArgs dup setup-read ReadFile ]
-    [ drop [ wait-for-file ] [ finish-read ] bi ] 2bi f ;
+    [
+        [ make-FileArgs dup setup-read ReadFile ]
+        [ drop [ wait-for-file ] [ finish-read ] bi ] 2bi f
+    ] with-destructors ;
 
 M: windows (wait-to-write)
     dup dup handle>> drain