summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
* * tests/info.test: Tests 38.* added, exactly testing the trackingandreas_kupries2008-07-253-84/+96
| | | | | | | | | | | | | | of location for uplevel scripts. * generic/tclCompile.c (TclInitCompileEnv): Reorganized the initialization of the #280 location information to match the flow in TclEvalObjEx to get more absolute contexts. * generic/tclBasic.c (TclEvalObjEx): Moved the pure-list optimization out of the eval-direct code path to be done always, i.e. even when a compile is requested. This way we do not loose the association between #280 location information and the list elements, if any.
* * generic/tclBasic.c: Modified TclArgumentGet to reject pure listsandreas_kupries2008-07-233-24/+34
| | | | | | | | | | * generic/tclCmdIL.c: immediately, without search. Reworked setup * generic/tclCompile.c: of eoFramePtr, doesn't need the line * tests/info.test: information, more sensible to have everything on line 1 when eval'ing a pure list. Updated the users of the line information to special case this based on the frame type (i.e. TCL_LOCATION_EVAL_LIST). Added a testcase demonstrating the new behaviour.
* * generic/tclBasic.c: Added missing function comments.andreas_kupries2008-07-221-1/+41
|
* * generic/tclCompile.c: Made the new TclEnterCmdWordIndexandreas_kupries2008-07-222-15/+15
| | | | * generic/tclCompile.h: static, and ansified.
* * generic/tclBasic.c: Reworked the handling of bytecode literalsandreas_kupries2008-07-225-60/+156
| | | | | | | | | | * generic/tclCompile.c: for #280 to fix the abysmal performance * generic/tclCompile.h: for deep recursion, replaced the linear * generic/tclExecute.c: search through the whole stack with * generic/tclInt.h: another hashtable and simplified the data structure used by the compiler (array instead of hashtable). Incidentially this also fixes the memory leak reported via [Bug 2024937].
* define DLLEXPORT as __attribute__ ((visibility("default"))) for gcc >= 4.0.nijtmans2008-07-221-16/+17
| | | | | This allows extensions to be compiled with -fvisiblity=hidden and still all symbols decorated with EXPORT will be exported. See: <http://gcc.gnu.org/wiki/Visibility> (backport from trunk tcl.h 1.256)
* * generic/tclBasic.c: Extended the existing TIP #280 system (infoandreas_kupries2008-07-219-64/+385
| | | | | | | | | | | * generic/tclCmdAH.c: frame), added the ability to track the * generic/tclCompCmds.c: absolute location of literal procedure * generic/tclCompile.c: arguments, and making this information * generic/tclCompile.h: available to uplevel, eval, and * generic/tclInterp.c: siblings. This allows proper tracking of * generic/tclInt.h: absolute location through custom (Tcl-coded) * generic/tclNamesp.c: control structures based on uplevel, etc. * generic/tclProc.c:
* Backported fix for bug #2015723patthoyts2008-07-211-5/+7
|
* Fix [Bug 2008248] and make dict->list->dict round trip efficient to boot.dkf2008-07-202-11/+55
|
* * generic/tclGet.c: Corrected out of date comments.dgp2008-07-081-7/+9
|
* * generic/tclCmdIL.c (InfoFrameCmd): Fixed unsafe idiom of settingandreas_kupries2008-07-071-2/+2
| | | | the interp result found by Don Porter.
* UtfToUtfProc: Avoid unwanted sign extension when converting incomplete UTF-8jenglish2008-07-041-2/+2
| | | | sequences. See [Bug 1908443] for details.
* * generic/tclIORChan.c (InvokeTclMethod): Fixed the memory leakandreas_kupries2008-07-031-1/+13
| | | | | reported in [Bug 1987821]. Thanks to Miguel for the rpeort and Don Porter for tracking the cause down.
* * generic/tcl.h: Bump to 8.5.3 for release.core_8_5_3dgp2008-06-301-2/+2
| | | | | | | | | | | * library/init.tcl: * tools/tcl.wse.in: * unix/configure.in: * unix/tcl.spec: * win/configure.in: * unix/configure: autoconf-2.59 * win/configure:
* * generic/tclPathObj.c: Plug memory leak in [Bug 1999176] fix. Thanksdgp2008-06-291-3/+7
| | | | Rolf Ade for detecting.
* * generic/tclPathObj.c: Plug memory leak in [Bug 1972879] fix. Thanksdgp2008-06-281-3/+8
| | | | Rolf Ade for detecting and Dan Steffen for the fix [Bug 2004654].
* * generic/tclPathObj.c: Fixed some internals management in the "path"dgp2008-06-241-2/+25
| | | | | Tcl_ObjType for the empty string value. Problem led to a crash in the command [glob -dir {} a]. [Bug 1999176].
* * generic/tclPathObj.c: Fixed bug in Tcl_GetTranslatedPath() whendgp2008-06-231-2/+11
| | | | | | | operating on the "Special path" variant of the "path" Tcl_ObjType intrep. A full normalization was getting done, in particular, coercing relative paths to absolute, contrary to what the function of producing the "translated path" is supposed to do. [Bug 1972879].
* * generic/tclInterp.c: Fixed completely boneheaded mistake thatdgp2008-06-201-3/+3
| | | | | | | | | * tests/interp.test: [interp bgerror $slave] and [$slave bgerror] would always act like [interp bgerror {}]. [Bug 1999035]. * tests/chanio.test: Corrected flawed tests revealed by a -debug 1 * tests/event.test: -singleproc 1 test suite run. * tests/io.test:
* * generic/tclClock.c (ClockConvertlocaltoutcObjCmd): Removed leftandreas_kupries2008-06-171-2/+1
| | | | over debug output.
* 2006-06-17 Kevin Kenny <kennykb@acm.org>Kevin B Kenny2008-06-171-7/+15
| | | | | | | | | * generic/tclClock.c (ConvertLocalToUTC): * tests/clock.test (clock-63.1): Fixed a bug where the internal ConvertLocalToUTC command segfaulted if passed a dictionary without the 'localSeconds' key. To the best of my knowledge, the bug was not observable in the [clock] command itself.
* * generic/tclCmdIL.c (TclInfoFrame): Backport of fix made on theandreas_kupries2008-06-161-41/+46
| | | | | | | | | * tests/info.test: head branch :: Moved the code looking up the information for key 'proc' out of the TCL_LOCATION_BC branch to after the switch, this is common to all frame types. Updated the testsuite to match. This was exposed by the 2008-06-08 commit (Miguel), switching uplevel from direct eval to compilation. Fixes [Bug 1987851].
* * win/tclWinChan.c (FileWideSeekProc): Accepted a patch byandreas_kupries2008-05-231-5/+8
| | | | | | | | | | | | Alexandre Ferrieux <ferrieux@users.sourceforge.net> to fix the [Bug 1965787]. 'tell' now works for locations > 2 GB as well instead of going negative. * generic/tclIO.c (Tcl_SetChannelBufferSize): Accepted a patch by * tests/io.test: Alexandre Ferrieux <ferrieux@users.sourceforge.net> * tests/chanio.test: to fix the [Bug 1969953]. Buffersize outside of the supported range are now clipped to nearest boundary instead of ignored.
* * generic/tclNamesp.c (Tcl_LogCommandInfo): Restored ability todgp2008-05-221-1/+4
| | | | | handle the argument value length = -1. Thanks to Chris Darroch for discovering the bug and providing the fix. [Bug 1968245].
* * generic/tclParse.c (ParseComment): The new TclParseAllWhiteSpace()dgp2008-05-211-5/+8
| | | | | | | * tests/parse.test (parse-15.60): routine has no mechanism to return the "incomplete" status of "\\\n" so calling this routine anywhere that can be reached within a Tcl_ParseCommand() call is a mistake. In particular, ParseComment() must not use it. [Bug 1968882].
* Backport of fixes to Tcl_SetNamespaceUnknownHandlerdkf2008-05-211-24/+37
|
* * generic/tclCompile.c: fix crash with tcl_traceExec. Found andMiguel Sofer2008-05-161-2/+2
| | | | fixed by Alexander Pasadyn [Bug 1964803].
* Fix off-by-one error that caused crashes. Backport from HEAD.dkf2008-05-071-2/+2
|
* fix warningdas2008-05-031-2/+1
|
* use Tcl_Panic() instead of panic()das2008-05-031-3/+3
|
* Also, panic early if we find out the wrong thread attemptingvasiljevic2008-04-271-8/+9
| | | | | to delete the async handler (common trap). As, only the one that created the handler is allowed to delete it.
* generic/tclAsync.c: Tcl_AsyncDelete(): panic if attemptvasiljevic2008-04-271-14/+29
| | | | | to locate handler token fails. Happens when some other thread attempts to delete somebody else's token.
* * tests/ioCmd.test: Extended testsuite for reflected channelandreas_kupries2008-04-241-48/+334
| | | | | | | | | | implementation. Added test cases about how it handles if the rug is pulled out from under a channel (= killing threads, interpreters containing the tcl command for a channel, and channel sitting in a different interpreter/thread.) * generic/tclIORChan.c: Fixed the bugs exposed by the new testcases, redone most of the cleanup and exit handling.
* * generic/tclIO.c (CopyData): Applied another patch by Alexandreandreas_kupries2008-04-151-6/+8
| | | | | | | * io.test (io-53.8a): Ferrieux <ferrieux@users.sourceforge.net>, * chanio.test (chan-io-53.8a): to shift EOF handling to the async part of the command if a callback is specified, should the channel be at EOF already when fcopy is called. Testcase by myself.
* * generic/tcl.h: Bump version number to 8.5.3b1 to distinguishdgp2008-04-111-3/+3
| | | | | | | | | | | * library/init.tcl: CVS development snapshots from the 8.5.2 and * unix/configure.in: 8.5.3 releases. * unix/tcl.spec: * win/configure.in: * README * unix/configure: autoconf (2.59) * win/configure:
* * generic/tclIOCmd.c (Tcl_FcopyObjCmd): Keeping check for negativeandreas_kupries2008-04-101-13/+8
| | | | | | | | | | | | values, changed to not be an error, but behave like the special value -1 (copy all, default). * tests/iocmd.test (iocmd-15.{12,13}): Removed. * tests/io.test (io-52.5{,a,b}): Reverted last change, added * tests/chanio.test (chan-io-52.5{,a,b}): comment regarding the meaning of -1, added two more testcases for other negative values, and input wrapped to negative.
* * generic/tclIOCmd.c (Tcl_FcopyObjCmd): Added checking of -sizeandreas_kupries2008-04-091-1/+15
| | | | | | | | * tests/ioCmd.test (iocmd-15.{13,14}): value to reject negative values, and values overflowing 32-bit signed. [Bug 1557855]. Basic patch by Alexandre Ferrieux <ferrieux@users.sourceforge.net>, with modifications from me to separate overflow from true negative value. Extended testsuite.
* backport enhanced commentsdgp2008-04-081-5/+18
|
* * tests/io.test (io-53.10): Testcase for bi-directionaly fcopy.andreas_kupries2008-04-072-29/+42
| | | | | | | | * tests/chanio.test: * generic/tclIO.c: Additional changes to data structures for fcopy * generic/tclIO.h: and channels to perform proper cleanup in case of a channel having two background copy operations running as is now possible.
* * generic/tclIO.c (BUSY_STATE, CheckChannelErrors,andreas_kupries2008-04-071-4/+8
| | | | | | TclCopyChannel): New macro, and the places using it. This change allows for bi-directional fcopy on channels. Thanks to Alexandre Ferrieux <ferrieux@users.sourceforge.net> for the patch.
* * generic/tclStringObj.c (Tcl_AppendFormatToObj):dgp2008-04-071-3/+3
| | | | | | Fix [format {% d}] so that it behaves the same way as in 8.4 and as C's printf(). * tests/format.test: Add a test for '% d' and '%+d'.
* * generic/tclIORChan.c (ReflectOutput): Allow zero return fromandreas_kupries2008-04-041-2/+13
| | | | | | | | write when input was zero-length anyway. Otherwise keept it an error, and separate the message from 'written too much'. * tests/ioCmd.test (iocmd-24.6): Testcase updated for changed message.
* * generic/tclIORChan.c (ReflectClose): Added missing removal ofandreas_kupries2008-04-041-1/+15
| | | | | | | | | the now closed channel from the reflection map. Before we could crash the system by invoking 'chan postevent' on a closed reflected channel, dereferencing the dangling pointer in the map. * tests/ioCmd.test (iocmd-31.8): Testcase for the above.
* * generic/tclIO.c (CopyData): Applied patch [Bug 1932639] toandreas_kupries2008-04-031-14/+24
| | | | | | * tests/io.test: prevent fcopy from calling -command synchronously * tests/chanio.test: the first time. Thanks to Alexandre Ferrieux <ferrieux@users.sourceforge.net> for report and patch.
* * generic/tclIO.c (CopyData): Applied patch for the fcopy problemandreas_kupries2008-04-021-2/+2
| | | | | | | [Bug 780533], with many thanks to Alexandre Ferrieux <ferrieux@users.sourceforge.net> for tracking it down and providing a solution. Still have to convert his test script into a proper test case.
* * generic/tclStrToD.c: Applied patch for [Bug 1839067] (fpandreas_kupries2008-04-011-1/+20
| | | | | * unix/tcl.m4: rounding setup on solaris x86, native cc), provided * unix/configure: by Michael Schlenker. configure regen'd.
* * generic/tclStubLib.c (Tcl_InitStubs): Added missing error message.dgp2008-04-011-1/+3
| | | | * generic/tclPkg.c (Tcl_PkgInitStubsCheck):
* * generic/tclStubLib.c (Tcl_InitStubs): Added missing error message.dgp2008-04-011-1/+3
|
* merge updates from HEAD dgp2008-03-312-6/+11
|
* * generic/tcl.h: Bump to 8.5.2 for release.core_8_5_2dgp2008-03-281-2/+2
| | | | | | | | | | | * library/init.tcl: * tools/tcl.wse.in: * unix/configure.in: * unix/tcl.spec: * win/configure.in: * unix/configure: autoconf-2.59 * win/configure: