!parse-integer: trailing whitespace also increments index, when junk
[jscl.git] / ecmalisp.lisp
index 21ef044..cd93750 100644 (file)
           (unless digit (return))
           (setq value (+ (* value 10) digit))
           (incf index)))
+      ;; Trailing whitespace
+      (do ((i index (1+ i)))
+          ((or (= i size) (not (whitespacep (char string i))))
+           (and (= i size) (setq index i))))
       (if (or junk-allow
-              (= index size)
-              (char= (char string index) #\space))
+              (= index size))
           (values (* sign value) index)
           (values nil index)))))