diff options
author | dgp <dgp@users.sourceforge.net> | 2008-12-09 21:22:55 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2008-12-09 21:22:55 (GMT) |
commit | 8dbcb4b276318e6b06a7f576e0f5c87875a52a67 (patch) | |
tree | e39ebc39fa16df5aad460109866ff73b8cbf2df6 /generic/tkBind.c | |
parent | 9d585802147a2634f25b95e7b75438b0262737e8 (diff) | |
download | tk-8dbcb4b276318e6b06a7f576e0f5c87875a52a67.zip tk-8dbcb4b276318e6b06a7f576e0f5c87875a52a67.tar.gz tk-8dbcb4b276318e6b06a7f576e0f5c87875a52a67.tar.bz2 |
TIP 337
* generic/tkBind.c: Updated callers of Tcl_BackgroundError()
* generic/tkCanvas.c: to use the new routine
* generic/tkEntry.c: Tcl_BackgroundException() as appropriate.
* generic/tkImgBmap.c:
* generic/tkListbox.c:
* generic/tkSelect.c:
* generic/tkTextDisp.c:
* generic/tkTextWind.c:
* macosx/tkMacOSXHLEvents.c:
* macosx/tkMacOSXMenu.c:
* macosx/tkMacOSXMenus.c:
* macosx/tkMacOSXScale.c:
* macosx/tkMacOSXWindowEvent.c:
* unix/tkUnixScale.c:
* unix/tkUnixWm.c:
* win/tkWinButton.c:
* win/tkWinMenu.c:
* win/tkWinScrlbr.c:
* win/tkWinWm.c:
Diffstat (limited to 'generic/tkBind.c')
-rw-r--r-- | generic/tkBind.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/generic/tkBind.c b/generic/tkBind.c index dffb926..a3312db 100644 --- a/generic/tkBind.c +++ b/generic/tkBind.c @@ -11,7 +11,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkBind.c,v 1.50 2008/11/25 11:19:03 dkf Exp $ + * RCS: @(#) $Id: tkBind.c,v 1.51 2008/12/09 21:22:56 dgp Exp $ */ #include "tkInt.h" @@ -1775,7 +1775,7 @@ Tk_BindEvent( break; } else { Tcl_AddErrorInfo(interp, "\n (command bound to event)"); - Tcl_BackgroundError(interp); + Tcl_BackgroundException(interp, code); break; } } @@ -2663,12 +2663,14 @@ ChangeScreen( { Tcl_Obj *cmdObj = Tcl_ObjPrintf("::tk::ScreenChanged %s.%d", dispName, screenIndex); + int code; Tcl_IncrRefCount(cmdObj); - if (Tcl_GlobalEvalObj(interp, cmdObj) != TCL_OK) { + code = Tcl_GlobalEvalObj(interp, cmdObj); + if (code != TCL_OK) { Tcl_AddErrorInfo(interp, "\n (changing screen in event binding)"); - Tcl_BackgroundError(interp); + Tcl_BackgroundException(interp, code); } Tcl_DecrRefCount(cmdObj); } |