~ chicken-core (chicken-5) cf81e3aa7f67eafbdb37ca6a540d7dae31d02034
commit cf81e3aa7f67eafbdb37ca6a540d7dae31d02034
Author: felix <felix@call-with-current-continuation.org>
AuthorDate: Sun Jul 4 00:24:36 2010 +0200
Commit: felix <felix@call-with-current-continuation.org>
CommitDate: Sun Jul 4 00:24:36 2010 +0200
use fixnum comparison in string-port method (thanks to Kon Lovett)
diff --git a/library.scm b/library.scm
index 691d9e03..ede19bae 100644
--- a/library.scm
+++ b/library.scm
@@ -1778,14 +1778,14 @@ EOF
[fixsuffix (eq? bp 'mingw32)])
(lambda (name)
(if fixsuffix
- (let ([end (fx- (##sys#size name) 1)])
- (if (fx>= end 0)
- (let ([c (##core#inline "C_subchar" name end)])
- (if (or (eq? c #\\) (eq? c #\/))
- (##sys#substring name 0 end)
+ (let ([end (fx- (##sys#size name) 1)])
+ (if (fx>= end 0)
+ (let ([c (##core#inline "C_subchar" name end)])
+ (if (or (eq? c #\\) (eq? c #\/))
+ (##sys#substring name 0 end)
+ name) )
name) )
- name) )
- name) ) ) )
+ name) ) ) )
(define (##sys#pathname-resolution name thunk . _)
(thunk (##sys#expand-home-path name)) )
@@ -3093,7 +3093,7 @@ EOF
(let ([position (##sys#slot p 10)]
[string (##sys#slot p 12)]
[len (##sys#slot p 11)] )
- (if (>= position len)
+ (if (fx>= position len)
#!eof
(let ((c (##core#inline "C_subchar" string position)))
(##sys#setislot p 10 (fx+ position 1))
Trap