summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
* * generic/tclBasic.c: More replacements of Tcl_UtfBackslash() callsdgp2011-03-065-22/+23
| | | | | | * generic/tclCmdMZ.c: with TclParseBackslash() where possible. * generic/tclCompExpr.c: * generic/tclCompile.c: * generic/tclUtil.c:
* * generic/tclUtil.c (TclFindElement): Guard escape sequence scansdgp2011-03-061-1/+1
| | | to not overrun the string end. [Bug 3192636]
* * generic/tclParse.c (TclParseBackslash): Correct trunction checks indgp2011-03-061-2/+2
| | | * tests/parse.test: \x and \u substitutions. [Bug 3200987]
* Typo in last commit broke tclStringObj.c build. Fixed.dgp2011-03-011-0/+1
|
* Now that we're no longer using SCM based on RCS, the RCS Keyword lines causedgp2011-03-0183-166/+0
| | | more harm than good. Purged them.
* [Bug 3129448]: Possible over-allocation on 64-bit platforms, part 2,nijtmans2011-01-253-113/+115
| | | | backported strcpy->memcpy change but not change in any struct.
* [Bug 3127687] Triggers FORTIFY_SOURCE buffer overflow detectionnijtmans2010-12-051-4/+4
|
* [Bug 3085863]: tclUniData 9 years oldnijtmans2010-10-233-1187/+1328
| | | | Upgrade everything to Unicode 6.0, except non-BMP characters > 0xFFFF
* * generic/tclExecute.c: [Bug 3057639]. Applied patch by Jeff toandreas_kupries2010-09-012-10/+12
| | | | | | | * generic/tclVar.c: make the behaviour of lappend in bytecompiled * tests/append.test: mode consistent with direct-eval and 'append' * tests/appendComp.test: generally. Added tests (append*-9.*) showing the difference.
* [Bug 3030870] make itcl 3.x built with pre-8.6 work in 8.6:nijtmans2010-07-252-7/+4
| | | | revert tclInt.h to what it was before, and relax the relation between Tcl_CallFrame and CallFrame.
* [Bug 3031278] fixed merge problem in previous commit.nijtmans2010-07-181-2/+1
|
* [Bug 3030870] make itcl 3.x built with pre-8.6 work in 8.6nijtmans2010-07-172-8/+15
|
* (Backport) take over definitions of _WIN32, DLLIMPORT, DLLEXPORT and ↵nijtmans2010-07-161-17/+23
| | | | TCL_LL_MODIFIER macros from Tcl8.5/8.6
* [Bug 3019634] errno.h and tclWinPort.h have conflicting definitions.nijtmans2010-06-281-13/+13
|
* Fixed object leakvasiljevic2010-04-061-3/+2
|
* * generic/tclStringObj.c: (SetStringFromAny): avoid tramplingvasiljevic2010-04-021-2/+4
| | | | | over the tclEmptyStringRep->bytes as it is thread-shared (thx to Gustaf Neumann for the (hard) work of locating this one).
* Fix [Bug 2954959] expr abs(-0.0) is -0.0nijtmans2010-02-221-1/+11
| | | | Added some test cases, adapted and backported from 8.5
* * generic/tclCompile.c: [Bug 2949302]: Fixed leak of supportandreas_kupries2010-02-111-18/+47
| | | | | structures for [info frame] which occured when bytecode compilation fails.
* [Bug 2942697]: Rework the RE engine so that certain pathological patterns aredkf2010-02-011-32/+34
| | | | | matched much more rapidly. Many thanks to Tom Lane for dianosing this issue and providing an initial patch.
* (Backport) Fix [Bug 2891556] and improve test to detect similar ↵ferrieux2009-11-161-6/+22
| | | | manifestations in the future.
* * generic/tclIO.c (CopyData): [Bug 2895565]. Dropped bogosityandreas_kupries2009-11-121-5/+12
| | | | | | * tests/io.test: which used the number of _written_ bytes or character to update the counters for the read bytes/characters. New test io-53.11. This is a backward port from the 8.5 branch.
* * generic/tclObj.c: Plus memory leak in TclContinuationsEnter().andreas_kupries2009-11-101-1/+12
| | | | [Bug 2895323]. Backport from Tcl 8.5 branch, change by Don Porter.
* * generic/tclBasic.c (TclEvalObjEx): Moved the #280 decrement ofandreas_kupries2009-11-091-6/+5
| | | | | | | refCount for the file path out of the branch after the whole conditional, closing a memory leak. Added clause on structure type to prevent seg.faulting. Backport from valgrinding the Tcl 8.5 branch.
* * generic/tclCompCmds.c: [Bug 2881263] (TclCompileForeachCmd,andreas_kupries2009-10-231-3/+4
| | | | | | TclCompileLindexCmd): Fixed. Moved the use of DefineLineInformation after all regular variable declarations, so that an empty statement (-UTIP_280) doesn't confuse c89 compilers.
* * generic/tclIO.c (FlushChannel): Skip OutputProc for low-levelandreas_kupries2009-10-231-2/+6
| | | | | | 0-length writes. When closing pipes which have already been closed not skipping leads to spurious SIG_PIPE signals. Reported by Mikhail Teterin <mi+thun@aldan.algebra.com>.
* Fix [Bug 2882561].dkf2009-10-211-3/+3
|
* fix typosdas2009-10-051-3/+3
|
* * generic/tclAlloc.c: Cleaned up various routines in thedgp2009-09-284-16/+57
| | | | | | | * generic/tclCkalloc.c: call stacks for memory allocation to * generic/tclParse.c: guarantee that any size values computed * generic/tclThreadAlloc.c: are within the domains of the routines they get passed to. [Bugs 2557696 and 2557796].
* * generic/tclCmdMZ.c (Tcl_SubstObj): Pass 'length' values todgp2009-09-181-3/+3
| | | | | recursive parsing calls to convert O(N^2) operations of [subst] to O(N).
* silence compiler warningsdgp2009-08-262-4/+4
|
* * generic/tclBasic.c (Tcl_CreateInterp, Tcl_EvalTokensStandard,andreas_kupries2009-08-2510-326/+1038
| | | | | | | | | | | | | | | | | | | | | | | EvalTokensStandard, Tcl_EvalEx, EvalEx, TclAdvanceContinuations, TclEvalObjEx): * generic/tclCmdMZ.c (Tcl_SwitchObjCmd, ListLines): * generic/tclCompCmds.c (*): * generic/tclCompile.c (TclSetByteCodeFromAny, TclInitCompileEnv, TclFreeCompileEnv, TclCompileScript): * generic/tclCompile.h (CompileEnv): * generic/tclInt.h (ContLineLoc, Interp): * generic/tclObj.c (ThreadSpecificData, ContLineLocFree, TclThreadFinalizeObjects, TclInitObjSubsystem, TclContinuationsEnter, TclContinuationsEnterDerived, TclContinuationsCopy, TclContinuationsGet, TclFreeObj): * generic/tclProc.c (TclCreateProc): * generic/tclVar.c (TclPtrSetVar): * tests/info.test (info-30.0-22): Extended parser, compiler, and execution with code and attendant data structures tracking the positions of continuation lines which are not visible in script's, to properly account for them while counting lines for #280, during direct and compiled execution.
* * generic/tclFileName.c: Correct result from [glob */test] when *dgp2009-08-171-3/+27
| | | | * tests/fileName.test: matches something like ~foo. [Bug 2837800]
* fix SunCC warningdas2009-07-231-2/+2
|
* Fix for [Bug 2820349]Joe Mistachkin2009-07-231-1/+3
|
* * generic/tclBasic.c (DeleteInterpProc,TclArgumentBCEnter,andreas_kupries2009-07-145-131/+127
| | | | | | | | | | | | | | | | | | | | | | TclArgumentBCRelease, TclArgumentGet): * generic/tclCompile.c (EnterCmdWordIndex, TclCleanupByteCode, TclInitCompileEnv, TclCompileScript): * generic/tclCompile.h (ExtCmdLoc): * generic/tclExecute.c (TclExecuteByteCode): * generic/tclInt.h (ExtIndex, CFWordBC): * tests/info.test (info-39.0): Backport of some changes made to the Tcl head, to handle literal sharing better. The code here is much simpler (trimmed down) compared to the head as the 8.4 branch is not bytecode compiling whole files, and doesn't compile eval'd code either. Reworked the handling of literal command arguments in bytecode to be saved (compiler) and used (execution) per command (See the TCL_INVOKE_STK* instructions), and not per the whole bytecode. This removes the problems with location data caused by literal sharing in proc bodies. Simplified the associated datastructures (ExtIndex is gone, as is the function EnterCmdWordIndex).
* * generic/tclCompile.c: The value stashed in iPtr->compiledProcPtrdgp2009-06-132-7/+3
| | | | | | | | | | | | | * generic/tclProc.c: when compiling a proc survives too long. We * tests/execute.test: only need it there long enough for the right TclInitCompileEnv() call to re-stash it into envPtr->procPtr. Once that is done, the CompileEnv controls. If we let the value of iPtr->compiledProcPtr linger, though, then any other bytecode compile operation that takes place will also have its CompileEnv initialized with it, and that's not correct. The value is meant to control the compile of the proc body only, not other compile tasks that happen along. Thanks to Carlos Tasada for discovering and reporting the problem. [Bug 2802881].
* Backport fix for [Bug 1028264]: WSACleanup() too early. The fix introduces ↵ferrieux2009-04-272-8/+111
| | | | "late exit handlers" for similar late process-wide cleanups.
* * generic/tclStringObj.c (UpdateStringOfString): Added cast to fixandreas_kupries2009-04-221-2/+2
| | | | signed/unsigned mismatch breaking win32 symbol/debug build.
* UpdateStringOfString: matchup with core-8-5-branch changesdas2009-04-151-6/+6
|
* * generic/tclStringObj.c: AppendUnicodeToUnicodeRep faileddgp2009-04-151-1/+2
| | | | to set stringPtr->allocated to 0, leading to crashes.
* * generic/tclStringObj.c: Completed backports of fixes fordgp2009-04-071-66/+113
| | | | [Bug 2494093] and [Bug 2553906].
* * generic/tclStringObj.c: Added protections from invalid memorydgp2009-03-302-3/+97
| | | | | | | * generic/tclTestObj.c: accesses when we append (some part of) * tests/stringObj.test: a Tcl_Obj to itself. Added the appendself and appendself2 subcommands to the [teststringobj] testing command and added tests to the test suite. [Bug 2603158]
* * generic/tclStringObj.c: Test stringObj-6.9 checks thatdgp2009-03-211-2/+8
| | | | | * tests/stringObj.test: Tcl_AppendStringsToObj() no longer crashes when operating on a pure unicode value. [Bug 2597185]
* * generic/tclExecute.c (INST_CONCAT1): Panic when appends overflowdgp2009-03-201-2/+8
| | | | the max length of a Tcl value. [Bug 2669109]
* * generic/tclPathObj.c: Fixed mistaken logic in TclFSGetPathType()dgp2009-02-201-1/+10
| | | | | | * tests/fileName.test: that assumed (not "absolute" => "relative"). This is a false assumption on Windows, where "volumerelative" is another possibility. [Bug 2571597].
* * generic/tcl.h (Darwin): workaround conflict between deprecated tcldas2009-02-061-1/+2
| | | | panic macro and panic() function declaration in <mach/mach.h> header.
* * generic/tclStringObj.c: Added overflow protections to thedgp2009-02-051-4/+29
| | | | | AppendUtfToUtfRep routine to either avoid invalid arguments and crashes, or to replace them with controlled panics. [Bug 2561794]
* * generic/tclStringObj.c (SetUnicodeObj): Corrected failure ofdgp2009-02-041-46/+34
| | | | | Tcl_SetUnicodeObj() to panic on a shared object. [Bug 2561488]. Also factored out common code to reduce duplication.
* * generic/tclStringObj.c (STRING_SIZE): Corrected failure to limitdgp2009-01-091-4/+7
| | | | | memory allocation requests to the sizes that can be supported by Tcl's memory allocation routines. [Bug 2494093].
* * generic/tclStringObj.c (STRING_UALLOC): Added missing parensdgp2009-01-081-2/+2
| | | | | required to get correct results out of things like STRING_UALLOC(num + append). [Bug 2494093].