summaryrefslogtreecommitdiffstats
path: root/generic/tclBasic.c
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2004-09-21 22:45:24 (GMT)
committerdgp <dgp@users.sourceforge.net>2004-09-21 22:45:24 (GMT)
commit0fab4196b86cedddde357a45a507d28394f69041 (patch)
tree9a6f4d0fee8ce88471f221dc2fa8d566f014fa3c /generic/tclBasic.c
parent06a048576807784660a9d34719a0f704125098bf (diff)
downloadtcl-0fab4196b86cedddde357a45a507d28394f69041.zip
tcl-0fab4196b86cedddde357a45a507d28394f69041.tar.gz
tcl-0fab4196b86cedddde357a45a507d28394f69041.tar.bz2
* generic/tclBasic.c: Reworked management of the interp
* generic/tclCompile.c: flag ERR_ALREADY_LOGGED, to reduce * generic/tclExecute.c: its exposure. Still left several * generic/tclNamesp.c: references that are just too nice on performace to do away with. These changes also resolve an inconsistency in the ::errorInfo values produced by [namespace eval x error foo bar] and [namespace eval x {error foo bar}]. * generic/tclExecute.c (TclCompEvalObj): Simplified the TclCompEvalObj routine. Much housekeeping now reliably happens elsewhere. [Patch 1031949]
Diffstat (limited to 'generic/tclBasic.c')
-rw-r--r--generic/tclBasic.c16
1 files changed, 3 insertions, 13 deletions
diff --git a/generic/tclBasic.c b/generic/tclBasic.c
index f6e5235..aabcb27 100644
--- a/generic/tclBasic.c
+++ b/generic/tclBasic.c
@@ -13,7 +13,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclBasic.c,v 1.114 2004/09/17 22:59:14 dgp Exp $
+ * RCS: @(#) $Id: tclBasic.c,v 1.115 2004/09/21 22:45:40 dgp Exp $
*/
#include "tclInt.h"
@@ -3311,7 +3311,6 @@ Tcl_LogCommandInfo(interp, script, command, length)
if (!(iPtr->flags & ERROR_CODE_SET)) {
Tcl_SetErrorCode(interp, "NONE", NULL);
}
- iPtr->flags &= ~ERR_ALREADY_LOGGED;
}
/*
@@ -3837,17 +3836,8 @@ Tcl_EvalObjEx(interp, objPtr, flags)
&& !allowExceptions) {
ProcessUnexpectedResult(interp, result);
result = TCL_ERROR;
-
- /*
- * If an error was created here, record information about
- * what was being executed when the error occurred.
- */
-
- if (!(iPtr->flags & ERR_ALREADY_LOGGED)) {
- script = Tcl_GetStringFromObj(objPtr, &numSrcBytes);
- Tcl_LogCommandInfo(interp, script, script, numSrcBytes);
- iPtr->flags &= ~ERR_ALREADY_LOGGED;
- }
+ script = Tcl_GetStringFromObj(objPtr, &numSrcBytes);
+ Tcl_LogCommandInfo(interp, script, script, numSrcBytes);
}
}
iPtr->evalFlags = 0;