Fixed a bug in argument checking SUBSTRING. Introduced
authorStephen Adams <edu/mit/csail/zurich/adams>
Thu, 26 Jun 1997 23:40:24 +0000 (23:40 +0000)
committerStephen Adams <edu/mit/csail/zurich/adams>
Thu, 26 Jun 1997 23:40:24 +0000 (23:40 +0000)
GUARANTEE-SUBSTRING and edited other procedures to use it.

v7/src/runtime/string.scm

index 90d64be0da3b8b8ba54b94e5d9df6f3430b6f974..75612242e7c3c72bcf467cdb247347cdd5ccae26 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: string.scm,v 14.13 1997/06/26 22:55:46 adams Exp $
+$Id: string.scm,v 14.14 1997/06/26 23:40:24 adams Exp $
 
 Copyright (c) 1988-1995 Massachusetts Institute of Technology
 
@@ -635,11 +635,11 @@ MIT in each case. |#
 
 
 (define-integrable (guarantee-substring string start end procedure)
-  (if (or (not (string? string))
-         (not (index-fixnum? start))
-         (not (index-fixnum? end))
-         (not (fix:<= start end))
-         (not (fix:<= end (string-length string))))
+  (if (not (and (string? string)
+               (index-fixnum? start)
+               (index-fixnum? end)
+               (fix:<= start end)
+               (fix:<= end (string-length string))))
       (guarantee-substring/fail string start end procedure)))
 
 (define (guarantee-substring/fail string start end procedure)