diff options
-rw-r--r-- | libguile/backtrace.c | 5 | ||||
-rw-r--r-- | libguile/throw.c | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/libguile/backtrace.c b/libguile/backtrace.c index b4bee732d..7e93ff3f5 100644 --- a/libguile/backtrace.c +++ b/libguile/backtrace.c @@ -1,5 +1,5 @@ /* Printing of backtraces and error messages - * Copyright (C) 1996,1997,1998,1999,2000,2001, 2003, 2004, 2006, 2009, 2010 Free Software Foundation + * Copyright (C) 1996,1997,1998,1999,2000,2001, 2003, 2004, 2006, 2009, 2010, 2011 Free Software Foundation * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License @@ -200,7 +200,8 @@ display_error_body (struct display_error_args *a) if (SCM_FRAMEP (a->frame)) { - source = scm_frame_source (a->frame); + if (scm_initialized_p) + source = scm_frame_source (a->frame); if (!scm_is_symbol (pname) && !scm_is_string (pname)) pname = scm_procedure_name (scm_frame_procedure (a->frame)); } diff --git a/libguile/throw.c b/libguile/throw.c index bdc3829b7..5c25524b4 100644 --- a/libguile/throw.c +++ b/libguile/throw.c @@ -404,7 +404,7 @@ handler_message (void *handler_data, SCM tag, SCM args) SCM parts = SCM_CADDR (args); SCM rest = SCM_CADDDR (args); - if (SCM_BACKTRACE_P && scm_is_true (stack)) + if (SCM_BACKTRACE_P && scm_is_true (stack) && scm_initialized_p) { SCM highlights; |