Is there any reason why weblocks tries to asdf:load-op every time there
is an error? This is extremely annoying in delivered images as the asd
files may not be around -- even though trivial-backtrace is fully
loaded.

Why not just depend on trivial-backtrace?

Alternatively, how about just loading trivial-backtrace in the case that
the symbol cannot be found?

diff -r efc83a14156b src/error-handler.lisp
--- a/src/error-handler.lisp    Wed Jul 15 18:01:35 2009 +0200
+++ b/src/error-handler.lisp    Fri Aug 07 14:03:09 2009 +0900
@@ -30,9 +30,12 @@
 
 ;;; 500 errors deserve special attention
 (defun print-trivial-backtrace (c)
-  (if (not (nth-value 1 (ignore-errors (asdf:oos 'asdf:load-op 
:trivial-backtrace))))
-    (funcall (find-symbol "PRINT-BACKTRACE" :trivial-backtrace) c :output nil)
-    "Please install TRIVIAL-BACKTRACE to get a simple backtrace on your 
platform."))
+  (symbol-macrolet ((sym (find-symbol "PRINT-BACKTRACE" :trivial-backtrace)))
+    (unless sym 
+      (ignore-errors (asdf:oos 'asdf:load-op :trivial-backtrace)))
+    (if sym
+       (funcall sym c :output nil)
+       "Please install TRIVIAL-BACKTRACE to get a simple backtrace on your 
platform.")))
 
 (defmethod handle-error-condition ((app weblocks-webapp) c)
   "Print a pretty platform-specific backtrace if possible;

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"weblocks" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/weblocks?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to