- (cond ((and (char? (car data))
- ;; FIXME: 0 in M1 strings
- (not (find (cut eq? #\nul <>) (list-head data (1- (length data)))))
- ;; FIXME: " in M1 strings
- (not (find (cut member <> '(#\" #\' #\backspace)) data))
- (eq? (last data)= #\nul))
+ (cond ((and (< len string-max)
+ (char? (car data))
+ (eq? (last data) #\nul)
+ (not (find (cut memq <> '(#\nul #\backspace #\return #\" #\')) (list-head data (1- (length data))))))