summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2012-03-11 10:57:05 +0100
committerAndy Wingo <wingo@pobox.com>2012-03-11 10:57:05 +0100
commite0dc497832fbd175538bfe60b468fcb43c49aaae (patch)
tree94fd9a0c075a48a6e63c68f47d03d6a645dfc02f
parentaaaa0eef9cfdb426f0b0fb4423fc25b655b722a4 (diff)
downloadguile-e0dc497832fbd175538bfe60b468fcb43c49aaae.tar.gz
add bad-request printer
* module/web/request.scm (bad-request-printer): Add printer for these exceptions.
-rw-r--r--module/web/request.scm13
1 files changed, 12 insertions, 1 deletions
diff --git a/module/web/request.scm b/module/web/request.scm
index 8259887c0..fd4f02bbd 100644
--- a/module/web/request.scm
+++ b/module/web/request.scm
@@ -1,6 +1,6 @@
;;; HTTP request objects
-;; Copyright (C) 2010, 2011 Free Software Foundation, Inc.
+;; Copyright (C) 2010, 2011, 2012 Free Software Foundation, Inc.
;; This library is free software; you can redistribute it and/or
;; modify it under the terms of the GNU Lesser General Public
@@ -131,6 +131,17 @@
(define (bad-request message . args)
(throw 'bad-request message args))
+(define (bad-request-printer port key args default-printer)
+ (apply (case-lambda
+ ((msg . args)
+ (display "Bad request: " port)
+ (apply format port msg args)
+ (newline port))
+ (_ (default-printer)))
+ args))
+
+(set-exception-printer! 'bad-request bad-request-printer)
+
(define (non-negative-integer? n)
(and (number? n) (>= n 0) (exact? n) (integer? n)))