ABCDEFGHIJKLMNOPQRSTUVWXYZ

Tcl_BackgroundError

Tcl_BackgroundError(3)      Tcl Library Procedures      Tcl_BackgroundError(3)



______________________________________________________________________________

NAME
       Tcl_BackgroundError - report Tcl error that occurred in background pro-
       cessing

SYNOPSIS
       #include <tcl.h>

       Tcl_BackgroundError(interp)

ARGUMENTS
       Tcl_Interp   *interp   (in)      Interpreter   in   which   the   error
                                        occurred.
_________________________________________________________________


DESCRIPTION
       This  procedure  is  typically  invoked  when a Tcl error occurs during
       ``background processing'' such as executing  an  event  handler.   When
       such  an  error  occurs, the error condition is reported to Tcl or to a
       widget or some other C code, and there is not usually any  obvious  way
       for that code to report the error to the user.  In these cases the code
       calls Tcl_BackgroundError  with  an  interp  argument  identifying  the
       interpreter in which the error occurred.  At the time Tcl_BackgroundEr-
       ror is invoked, the interpreter's result  is  expected  to  contain  an
       error message.  Tcl_BackgroundError will invoke the bgerror Tcl command
       to report the error in an application-specific fashion.  If no  bgerror
       command  exists,  or  if  it  returns  with  an  error  condition, then
       Tcl_BackgroundError reports the error itself by printing a  message  on
       the standard error file.

       Tcl_BackgroundError  does  not  invoke bgerror immediately because this
       could potentially interfere with scripts that are  in  process  at  the
       time  the error occurred.  Instead, it invokes bgerror later as an idle
       callback.  Tcl_BackgroundError saves the values of  the  errorInfo  and
       errorCode  variables  and  restores  these  values just before invoking
       bgerror.

       It is possible for many background errors to accumulate before  bgerror
       is  invoked.   When  this  happens,  each of the errors is processed in
       order.  However, if bgerror returns a break exception, then all remain-
       ing error reports for the interpreter are skipped.


KEYWORDS
       background, bgerror, error



Tcl                                   7.5               Tcl_BackgroundError(3)