~ chicken-core (chicken-5) a7f5cdc115104758d6c27ceb3129e8bcbd02f5b5
commit a7f5cdc115104758d6c27ceb3129e8bcbd02f5b5
Author: felix <felix@call-with-current-continuation.org>
AuthorDate: Fri Mar 5 11:53:29 2010 +0100
Commit: felix <felix@call-with-current-continuation.org>
CommitDate: Fri Mar 5 11:53:29 2010 +0100
terminal-size for windows was unimplemented, but should at least return 0/0
diff --git a/posixwin.scm b/posixwin.scm
index ea8bf0be..b95cebc5 100644
--- a/posixwin.scm
+++ b/posixwin.scm
@@ -1768,7 +1768,13 @@ EOF
(define (terminal-port? port)
(##sys#check-port port 'terminal-port?)
- #f)
+ (let ([fp (##sys#peek-unsigned-integer port 0)])
+ (and (not (eq? 0 fp)) (##core#inline "C_tty_portp" port) ) ) )
+
+(define (terminal-size port)
+ (if (terminal-port? port)
+ (values 0 0)
+ (##sys#error 'terminal-size "port is not connected to a terminal" port)))
(define-foreign-variable _iofbf int "_IOFBF")
(define-foreign-variable _iolbf int "_IOLBF")
@@ -2140,7 +2146,6 @@ EOF
(define-unimplemented signal-masked?)
(define-unimplemented signal-unmask!)
(define-unimplemented terminal-name)
-(define-unimplemented terminal-size)
(define-unimplemented unmap-file-from-memory)
(define-unimplemented user-information)
(define-unimplemented utc-time->seconds)
Trap