From eeae2e173a7f99ede0fa7e92ece1514fcbdc1dca Mon Sep 17 00:00:00 2001 From: erg Date: Tue, 5 Sep 2006 19:40:38 +0000 Subject: [PATCH] refactored win32streams --- library/io/windows/stream.factor | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/library/io/windows/stream.factor b/library/io/windows/stream.factor index a4da9cdb36..3b321fd79e 100644 --- a/library/io/windows/stream.factor +++ b/library/io/windows/stream.factor @@ -89,17 +89,16 @@ M: integer do-write ( buffer integer -- ) ch>string swap >buffer ; M: string do-write ( buffer string -- ) - dup length pick buffer-capacity <= [ - swap >buffer + dup length pick 2dup buffer-capacity <= [ + 2drop swap >buffer ] [ - dup length pick buffer-size > [ - dup length pick extend-buffer + 2dup buffer-size > [ + extend-buffer ] [ - flush-output + 2drop flush-output ] if do-write ] if ; - M: win32-stream stream-close ( stream -- ) win32-stream-this [ out-buffer get maybe-flush-output @@ -108,7 +107,6 @@ M: win32-stream stream-close ( stream -- ) out-buffer get buffer-free ] bind ; - M: win32-stream stream-read1 ( stream -- ch/f ) win32-stream-this [ 1 in-buffer get consume-input >string-or-f first @@ -134,7 +132,7 @@ M: win32-stream stream-write ( str stream -- ) M: win32-stream set-timeout ( n stream -- ) win32-stream-this [ timeout set ] bind ; -M: win32-stream expire ! not a generic +M: win32-stream expire ( stream -- ) win32-stream-this [ timeout get [ millis cutoff get > [ handle get CancelIo ] when ] when ] bind ;