From 2787a2a0604bc31eb8b67f34f63a51a0922bc0a7 Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Fri, 30 Nov 2007 21:46:33 +0000 Subject: [PATCH] fixed another bug svn: r7878 --- collects/framework/private/color.ss | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/collects/framework/private/color.ss b/collects/framework/private/color.ss index b1bd13f5b6..1eaebb0165 100644 --- a/collects/framework/private/color.ss +++ b/collects/framework/private/color.ss @@ -487,19 +487,20 @@ [depth 0]) (when (< depth (vector-length (get-parenthesis-colors))) (let seq-loop ([inner-sequence-start (+ start 1)]) - (let ([post-whitespace (skip-whitespace inner-sequence-start 'forward #t)]) - (let-values ([(start-inner end-inner error-inner) - (send parens match-forward (- post-whitespace start-pos))]) - (cond - [(and start-inner end-inner (not error-inner)) - (paren-loop start-inner end-inner (+ depth 1)) - (seq-loop end-inner)] - [(skip-past-token post-whitespace) - => - (λ (after-non-paren-thing) - (seq-loop after-non-paren-thing))])))) + (when (< inner-sequence-start end) + (let ([post-whitespace (skip-whitespace inner-sequence-start 'forward #t)]) + (let-values ([(start-inner end-inner error-inner) + (send parens match-forward (- post-whitespace start-pos))]) + (cond + [(and start-inner end-inner (not error-inner)) + (paren-loop start-inner end-inner (+ depth 1)) + (seq-loop end-inner)] + [(skip-past-token post-whitespace) + => + (λ (after-non-paren-thing) + (seq-loop after-non-paren-thing))]))))) (highlight start end here (vector-ref (get-parenthesis-colors) depth))))) - + ;; See docs (define/public (forward-match position cutoff) (do-forward-match position cutoff #t))