| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|\ |
|
| | |
|
|\ \
| |/ |
|
| | |
|
|\ \
| |/ |
|
| | |
|
|\ \
| |/
| |
| | |
bump the interp's compile epoch.
|
| |
| |
| | |
bump the interp's compile epoch.
|
|\ \
| |/ |
|
| | |
|
| | |
|
| |
| |
| | |
rest of Tcl source code. No ABI change. API change *should* be harmless.
|
|\ \
| |/
| | |
cause more harm than good. Purged them (except in zlib files).
|
| |
| |
| | |
more harm than good. Purged them.
|
| |
| |
| |
| |
| |
| | |
(TraceVariableObjCmd): [Patch 3048354]: Use memcpy() instead of
strcpy() to avoid buffer overflow; we have the correct length of data
to copy anyway since we've just allocated the target buffer.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
variable traces so that the errorInfo value contains the original
error message. [Bug 2151707]
* generic/tclVar.c: Revised implementation of TclObjVarErrMsg
so that error message construction does not disturb an existing
iPtr->errorInfo that may be in progress.
|
| | |
|
| |
| |
| |
| | |
3009403]: Signature of Tcl_GetHashKey, Tcl_(Create|Find)HashEntry
|
| |
| |
| |
| |
| |
| | |
(TraceVariableObjCmd): [Patch 3048354]: Use memcpy() instead of
strcpy() to avoid buffer overflow; we have the correct length of data
to copy anyway since we've just allocated the target buffer.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
- some internal const decorations
- spacing
|
| | |
|
| |
| |
| |
| |
| | |
const tables. No functional
or API change.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
variable traces so that the errorInfo value contains the original
error message. [Bug 2151707]
* generic/tclVar.c: Revised implementation of TclObjVarErrMsg
so that error message construction does not disturb an existing
iPtr->errorInfo that may be in progress.
|
| |
| |
| |
| |
| | |
* generic/unsupported.test: insure that unset traces are run even
when the coroutine is unwinding [Bug 2093947]
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
line
generic/tclConfig.c make the internal cfg variable const.
generic/tclTrace.c add a "const" keyword, allowing the "traceSubCmds[]"
array to be placed by the C- compiler in a code segment
in stead of a data segment
Those harmless changes are as a preparation for a future change proposal.
Unfortunately, my (Eclipse) editor automatically removes spaces at the
end of every line. Creating a patch for this proposal should not contain
unrelated harmless changes, so therefore this separate check-in. No
change in functionality. No risk.
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
|
|
|
| |
*** POTENTIAL INCOMPATIBILITY *** (tclInt.h and tclCompile.h)
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclExecute.c (TEBC, TclGetSrcInfoForCmd):
* generic/tclInt.h:
* generic/tclTrace.c (TclCheck(Interp|Execution)Traces):
Removed the need for TEBC to inspect the command before calling
TEOvI, leveraging the TIP 282 infrastructure. Moved the generation
of a correct nul-terminated command string away from the trace
code, back into TEOvI/GetCommandSource.
|
| |
|
|
|
|
|
|
| |
* generic/tclTest.c: TclCheckInterpTraces that led to infinite loop
* tests/trace.test: when multiple Tcl_CreateTrace traces were set
and one of them did not fire due to level restrictions. [Bug 1743931].
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclExecute.c: TclStackAlloc and TclStackFree to make them
easier for callers to use (or more precisely, harder to misuse).
TclStackFree now takes a (void *) argument which is the pointer
intended to be freed. TclStackFree will panic if that's not actually
the memory the call will free. TSA/TSF also now tolerate receiving
(interp == NULL), in which case they simply fall back to be calls to
Tcl_Alloc/Tcl_Free.
* generic/tclIntDecls.h: make genstubs
* generic/tclBasic.c: Updated callers
* generic/tclCmdAH.c:
* generic/tclCmdIL.c:
* generic/tclCompCmds.c:
* generic/tclCompExpr.c:
* generic/tclCompile.c:
* generic/tclFCmd.c:
* generic/tclFileName.c:
* generic/tclIOCmd.c:
* generic/tclIndexObj.c:
* generic/tclInterp.c:
* generic/tclNamesp.c:
* generic/tclProc.c:
* generic/tclTrace.c:
* unix/tclUnixPipe.c:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
processor for non-TCL_OK returns. Also spli TEOvI in a full
version that handles non-existing and traced commands, and a
separate shorter version for the regular case.
* generic/tclBasic.c: Moved the generation of command strings for
* generic/tclTrace.c: traces: previously in Tcl_EvalObjv(), now
in TclCheck[Interp|Execution]Traces(). Also insured that the
strings are properly nul terminated at the correct length
[Bug 1693986]
* generic/tclBasic.c: Extend usage of TclLimitReady() and
* generic/tclExecute.c: (new) TclLimitExceeded() macros.
* generic/tclInt.h:
* generic/tclInterp.c:
* generic/tclInt.h: New TclCleanupCommandMacro for core usage.
* generic/tclBasic.c:
* generic/tclExecute.c:
* generic/tclObj.c:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclLink.c (LinkTraceProc): Update Tcl_VarTraceProcs so that
* generic/tclNamesp.c (Error*Read): they call Tcl_InterpDeleted()
* generic/tclTrace.c (Trace*Proc): for themselves, and do not rely
* generic/tclUtil.c (TclPrecTraceProc): on (frequently buggy) setting
of the TCL_INTERP_DESTROYED flag by the trace core.
* generic/tclVar.c: Update callers of TclCallVarTraces to not
pass in the TCL_INTERP_DESTROYED flag. Also apply filters so that
public routines only pass documented flag values down to lower level
routines.
* generic/tclTrace.c (TclCallVarTraces): The setting of the
TCL_INTERP_DESTROYED flag is now done entirely within the
TclCallVarTraces routine, the only place it can be done right.
|
|
|
|
| |
efficient). After [Patch 1529526] (afredd)
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclExecute.c: calls with TclStackAlloc calls to use memory
* generic/tclFCmd.c: on Tcl's evaluation stack.
* generic/tclFileName.c:
* generic/tclIOCmd.c:
* generic/tclIndexObj.c:
* generic/tclInterp.c:
* generic/tclNamesp.c:
* generic/tclTrace.c:
* unix/tclUnixPipe.c:
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclBasic.c: there is always a valid CallFrame, even
* generic/tclCmdIL.c: at level 0 [Patch 1577278]. Most of the
* generic/tclInt.h: changes involve removing tests for
* generic/tclNamesp.c: iPtr->(var)framePtr==NULL. There is now a
* generic/tclObj.c: CallFrame pushed at interp creation
* generic/tclProc.c: with a pointer to it stored in
* generic/tclTrace.c: iPtr->rootFramePtr. A second unused
* generic/tclVar.c: field in Interp is hijacked to enable
further functionality, currently unused (but with several FRQs
depending on it).
|
|
|
|
| |
* tests/trace.test: and enterstep traces. [Bug 1458266]
|
| |
|