From 405c7dc9e2d7341d2d699662e5a2f2e5734c4ad7 Mon Sep 17 00:00:00 2001 From: Abdulaziz Ghuloum Date: Mon, 18 Feb 2008 23:26:54 -0500 Subject: [PATCH] fixed a missing put-mark call in fasl-read. --- scheme/ikarus.fasl.ss | 34 ++++++++++++++++++++-------------- scheme/last-revision | 2 +- 2 files changed, 21 insertions(+), 15 deletions(-) diff --git a/scheme/ikarus.fasl.ss b/scheme/ikarus.fasl.ss index df438fe..c6b891a 100644 --- a/scheme/ikarus.fasl.ss +++ b/scheme/ikarus.fasl.ss @@ -284,21 +284,27 @@ (or (vector-ref marks m) (error who "uninitialized mark" m)))] [(#\l) ;;; list of length <= 255 - (let ([n (read-u8 p)]) - (let f ([n n]) - (cond - [(< n 0) (read)] - [else - (let ([x (read)]) - (cons x (f (- n 1))))])))] + (let ([ls + (let ([n (read-u8 p)]) + (let f ([n n]) + (cond + [(< n 0) (read)] + [else + (let ([x (read)]) + (cons x (f (- n 1))))])))]) + (when m (put-mark m ls)) + ls)] [(#\L) ;;; list of length > 255 - (let ([n (read-int p)]) - (let f ([n n]) - (cond - [(< n 0) (read)] - [else - (let ([x (read)]) - (cons x (f (- n 1))))])))] + (let ([ls + (let ([n (read-int p)]) + (let f ([n n]) + (cond + [(< n 0) (read)] + [else + (let ([x (read)]) + (cons x (f (- n 1))))])))]) + (when m (put-mark m ls)) + ls)] [else (die who "Unexpected char as a fasl object header" h)]))) (read)) diff --git a/scheme/last-revision b/scheme/last-revision index 1a7d37e..12c4d99 100644 --- a/scheme/last-revision +++ b/scheme/last-revision @@ -1 +1 @@ -1397 +1398