When parsing local variables, convert editor errors into failures.
authorChris Hanson <org/chris-hanson/cph>
Sun, 27 Jan 2008 02:25:37 +0000 (02:25 +0000)
committerChris Hanson <org/chris-hanson/cph>
Sun, 27 Jan 2008 02:25:37 +0000 (02:25 +0000)
v7/src/edwin/fileio.scm

index 7782100ba3a9f6916ad8009fb9e53338a101e135..8769903e936340481193b2f8a993c72f69348193 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: fileio.scm,v 1.171 2007/04/01 17:33:07 riastradh Exp $
+$Id: fileio.scm,v 1.172 2008/01/27 02:25:37 cph Exp $
 
 Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
     1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
@@ -458,7 +458,14 @@ after you find a file.  If you explicitly request such a scan with
                (else
                 (editor-error "Missing colon in local variables entry")))))
 
-      (loop start))))
+      (call-with-current-continuation
+       (lambda (k)
+        (bind-condition-handler (list condition-type:editor-error)
+            (lambda (condition)
+              (editor-failure (condition/report-string condition))
+              (k unspecific))
+          (lambda ()
+            (loop start))))))))
 
 (define (evaluate sexp)
   (eval sexp edwin-environment))