diff --git a/collects/web-server/lang/abort-resume.ss b/collects/web-server/lang/abort-resume.ss index 54af21bb9a..827a14e130 100644 --- a/collects/web-server/lang/abort-resume.ss +++ b/collects/web-server/lang/abort-resume.ss @@ -36,11 +36,12 @@ (define (current-saved-continuation-marks-and key val) (reverse (list* (cons key val) + (filter (lambda (k*v) (not (equal? key (car k*v)))) (let-values ([(current) (continuation-mark-set->list (current-continuation-marks web-prompt) the-save-cm-key)]) (if (empty? current) empty - (first current)))))) + (first current))))))) ;; current-continuation-as-list: -> (listof value) ;; check the safety marks and return the list of marks representing the continuation diff --git a/collects/web-server/lang/elim-callcc.ss b/collects/web-server/lang/elim-callcc.ss index 27caaee00d..1a9ea1d54f 100644 --- a/collects/web-server/lang/elim-callcc.ss +++ b/collects/web-server/lang/elim-callcc.ss @@ -68,7 +68,7 @@ (let* ([ke-prime (elim-callcc #'ke)] [me-prime (elim-callcc #'me)] [be-prime (elim-callcc #'be)]) - ; XXX Could be dangerous to evaluate ke-prime and me-prime twice + ; Could be dangerous to evaluate ke-prime and me-prime twice (but remember, this is in ANF) (markit (quasisyntax/loc stx (with-continuation-mark #,ke-prime #,me-prime