diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-07-24 22:00:43 +0200 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2010-07-24 22:00:43 +0200 |
commit | 151eb1884a075479e6aa4bc91982661730375d46 (patch) | |
tree | ca5b59dc0ee67aecb59cd171797571be9672187a /scheme | |
parent | 0fcf4491f889e24853d6b6643b773d0b4e5e7346 (diff) | |
download | geiser-chez-151eb1884a075479e6aa4bc91982661730375d46.tar.gz geiser-chez-151eb1884a075479e6aa4bc91982661730375d46.tar.bz2 |
Racket: catching errors during contract retrieval.
Diffstat (limited to 'scheme')
-rw-r--r-- | scheme/racket/geiser/modules.rkt | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/scheme/racket/geiser/modules.rkt b/scheme/racket/geiser/modules.rkt index af19b03..9b640ec 100644 --- a/scheme/racket/geiser/modules.rkt +++ b/scheme/racket/geiser/modules.rkt @@ -138,7 +138,9 @@ module-cache) (define (module-exports mod) - (define (value id) (dynamic-require mod id (const #f))) + (define (value id) + (with-handlers ([exn? (const #f)]) + (dynamic-require mod id (const #f)))) (define (contracted id) (let ([v (value id)]) (if (has-contract? v) |