summaryrefslogtreecommitdiffstats
path: root/generic
Commit message (Collapse)AuthorAgeFilesLines
* * generic/tclNamespace.c (TclTeardownNamespace): Tcl_Obj-ifieddgp2004-09-303-40/+39
| | | | | | | | | | | | | | | * tests/namespace.test (namespace-8.5,6): the save/restore of ::errorInfo and ::errorCode during global namespace teardown. Revised the comment to clarify why this is done, and added tests that will fail if this is not done. * generic/tclResult.c (TclTransferResult): Added safety checks so that unexpected undefined ::errorInfo or ::errorCode will not lead to a segfault. * generic/tclVar.c (CallVarTraces): Save/restore the flag * tests/var.test (var-16.1): values that define part of the interpreter state during variable traces. [Bug 10381021].
* fix for buffer overflow in [subst], [Bug 1036649]Miguel Sofer2004-09-291-1/+11
|
* Make sure large shifts shift for real. [Bug 868467]dkf2004-09-181-7/+76
|
* * generic/tclObj.c (Tcl_GetIntFromObj): Corrected flaw in returningdgp2004-09-141-2/+2
| | | | the int value of a wideInteger. [Bug 1027690]
* Minor mods to latest commit to correct bugs and compiler warnings ondgp2004-09-101-7/+9
| | | | TCL_WIDE_INT_IS_LONG platforms.
* One less crazy long/wide aunt in the attic... [Bug 868489]dkf2004-09-101-24/+149
|
* Fix [Bug 1025359] to make sure wide seeks don't lose errorsdkf2004-09-101-5/+5
|
* * generic/tcl.h: Micro formatting fixes.andreas_kupries2004-09-102-6/+6
| | | | | * generic/tclIOGT.c: Channel version fixed, must be 3, to have wideseekProc. Thanks to David Graveraux <davygrvy@pobox.com>.
* * generic/tclNamespace.c (TclGetNamespaceForQualName): Resolveddgp2004-09-101-12/+8
| | | | | | | | | longstanding inconsistency in the treatment of the TCL_NAMESPACE_ONLY flag revealed by testing the 2004-09-09 commits against Itcl. TCL_NAMESPACE_ONLY now acts as specified in the pre-function comment, forcing resolution in the passed in context namespace. It has been incorrectly forcing resolution in the interp's current namespace.
* * generic/tclExecute.c (INST_CONCAT1): added a peepholeMiguel Sofer2004-09-101-1/+15
| | | | | | optimisation for concatting an empty string. This enables replacing the idiom 'K $x [set x {}]' by '$x[set x {}]' for fastest execution.
* Also corrected faulty prevention of [namespace import] cycles.dgp2004-09-091-21/+27
| | | | [Bug 1017299]
* * generic/tclNamesp.c (Tcl_ForgetImport): Corrected faultydgp2004-09-091-45/+78
| | | | | * tests/namespace.test: logic that relied exclusively on string matching and failed in the presence of [rename]s. [Bug 560297]
* * generic/tclTimer.c: Removed a premature optimisation thatKevin B Kenny2004-09-071-14/+4
| | | | | | attempted to store the assoc data in the client data; the optimisation caused a bug that [after] would overwrite its imports. [Bug 1016167]
* Fix crash in [string map] when objects are shared. [Bug 1018562]dkf2004-08-301-5/+21
|
* Ensure that the %ld conversion works correctly on 64-bit platforms. [Bug ↵dkf2004-08-191-10/+5
| | | | 1011860]
* fix for [Bug 1008314]Miguel Sofer2004-08-162-6/+48
|
* * generic/tclEvent.c (Tcl_Finalize): Re-organized Tcl_Finalizedgp2004-07-301-24/+24
| | | | | so that Tcl_ExitProc's that call Tcl_Finalize recursively do not cause deadlock. [Patch 999084 fixes Tk Bug 714956]
* * generic/tclMain.c (Tcl_Main, StdinProc): Append newline onlydgp2004-07-281-3/+5
| | | | | | * tests/basic.test (basic-46.1): to incomplete scripts as part of multi-line script construction. Do not add an extra trailing newline to the complete script. [Bug 833150]
* * generic/tclThreadAlloc.c: Moved the tclInt.h include to providepatthoyts2004-07-251-4/+4
| | | | Tcl_Panic which is now required for non-threaded build.
* * generic/tclEvent.c: Correct threaded obj allocator tohobbs2004-07-213-4/+67
| | | | | | | * generic/tclInt.h: fully cleanup on exit and allow for * generic/tclThreadAlloc.c: reinitialization. [Bug #736426] * unix/tclUnixThrd.c: (mistachkin, kenny) * win/tclWinThrd.c:
* * generic/tclIOCmd.c (Tcl_FcopyObjCmd): Corrected a typo in theandreas_kupries2004-07-161-3/+3
| | | | | generation of error messages and simplified by reusing data in a variable instead of retrieving the string again. Fixes [Tcl SF Bug 835289].
* Added new fix for the Tcl Bug #770053. Now we conditionaly performvasiljevic2004-07-151-2/+14
| | | | | the TclFinalizeNotifier in order to correct broken ref-counting of the notifier thread.
* * generic/tclIO.h (CHANNEL_INCLOSE): New flag. Set inandreas_kupries2004-07-152-2/+58
| | | | | | | | | | | | | | | | | | | | | | * generic/tclIO.c (Tcl_UnregisterChannel): 'Tcl_Close' while the * generic/tclIO.c (Tcl_Close): close callbacks are run. Checked in 'Tcl_Close' and 'Tcl_Unregister' to prevent recursive call of 'close' in the close-callbacks. This is a possible error made by implementors of virtual filesystems based on 'tclvfs', thinking that they have to close the channel in the close handler for the filesystem. * generic/tclIO.c: * generic/tclIO.h: * Not reverting, but #ifdef'ing the changes from May 19, 2004 out of the core. This removes the ***POTENTIAL INCOMPATIBILITY*** for channel drivers it introduced. This has become possible due to Expect gaining a BlockModeProc and now handling blockingg and non-blocking modes correctly. Thus [SF Tcl Bug 943274] is still fixed if a recent enough version of Expect is used. * doc/CrtChannel.3: Added warning about usage of a channel without a BlockModeProc.
* * generic/tclIOCmd.c (Tcl_PutsObjCmd): Added length check to theandreas_kupries2004-07-151-2/+2
| | | | | | old depreceated newline syntax, to ensure that only "nonewline" is accepted. [Tcl SF Bug 985869], reported by Joe Mistachkin <mistachkin@users.sourceforge.net>.
* Remoevd initialization of TSD for the new thread in NewThreadProc()vasiljevic2004-07-151-10/+1
| | | | since this will result in TclInitNotifier never being called.
* Backout of changes to fix the Tcl Bug #770053.vasiljevic2004-07-151-2/+7
| | | | See SF bugreport for more info.
* * README, generic/tcl.h, tools/tcl.wse.in: bumped tohobbs2004-07-131-3/+3
| | | | | * unix/configure, unix/configure.in, unix/tcl.spec: patchlevel * win/README.binary, win/configure, win/configure.in: 8.4.7
* Fixed broken build on Windows caused by missing TCL_THREAD_CREATE_RETURNvasiljevic2004-07-131-1/+3
| | | | | in NewThreadProc(). This is backported from head. Thnx to Kevin Kenny for spotting this.
* added support for wide integers to round(); [Bug 908375], reported byMiguel Sofer2004-07-031-39/+37
| | | | Hemang Lavana.
* * generic/tclPipe.c (TclCreatePipeline): Add 2>@1 as a specialhobbs2004-07-021-15/+36
| | | | * tests/exec.test: case redir of stderr to the result output.
* * generic/regcomp.c (stid): correct minor pointer size errorhobbs2004-07-021-2/+2
|
* Corrected Tcl Bug #770053vasiljevic2004-06-222-4/+99
|
* * generic/tclDecls.h: Regenerated on a unix box.andreas_kupries2004-06-105-7236/+7236
| | | | | | | * generic/tclIntDecls.h: The Win/DOS EOLs from the * generic/tclIntPlatDecls.h: last regen screwed up compilation * generic/tclPlatDecls.h: with an older gcc. * generic/tclStubInit.c:
* Partialy fixed Bug #932314vasiljevic2004-06-101-6/+14
|
* Silence compiler warningsdgp2004-06-081-2/+3
|
* * generic/tclCompile.c: handle warning [Bug 969066]Miguel Sofer2004-06-081-2/+6
|
* * generic/tcl.h: Corrected Tcl_WideInt declarations so that the mingw Kevin B Kenny2004-06-057-7231/+7249
| | | | | | | | | | | | | | | | | build works again. * generic/tclInt.decls: Changes to the tests for * generic/tclIntPlatDecls.h: clock frequency in Tcl_WinTime * generic/tclStubInit.c: so that any clock frequency * tests/platform.test (platform-1.3): is accepted provided that * win/tclWin32Dll.c (TclWinCPUID): all CPU's in the system share * win/tclWinTest.c (TestwincpuidCmd): a common chip, and hence, * win/tclWinTime.c (Tcl_GetTime): presumably, a common clock. This change necessitated a small burst of assembly code to read CPU ID information, which was added as TclWinCPUID in the internal Stubs. To test this code in the common case of a single-processor machine, a 'testwincpuid' command was added to tclWinTest.c, and a test case in platform.test. Thanks to Jeff Godfrey and Richard Suchenwirth for reporting this bug. [Bug #976722]
* * generic/tclEncoding.c:rmax2004-05-271-5/+131
| | | | | | * tests/encoding.test: added support and tests for translating embedded null characters between real nullbytes and the internal representation on input/output (Bug #949905).
* * generic/tclExecute.c (VerifyExprObjType): use GET_WIDE_OR_INT tohobbs2004-05-251-2/+3
| | | | | | properly have tclIntType used for smaller values. This corrects TclX bug 896727 and any other 3rd party extension that created math functions but was not yet WIDE_INT aware in them.
* * generic/tclVar.c (TclObjUnsetVar2): backported fix [Bug 735335]Miguel Sofer2004-05-221-9/+26
| | | | | | | | and new (in tcl8.4) exteriorisations of [Bug 736729] due to the use of tclNsVarNameType obj types. The consequences of [Bug 736729] should be the same as in tcl8.3 and previous versions. The use of tclNsVarNameType objs is still disabled, pending a decision by the release manager.
* Removed one bogus clearance of the has-more flag. Erroneously keptandreas_kupries2004-05-191-3/+1
| | | | after shifting the code.
* * tclIO.c: Fixed [SF Tcl Bug 943274]. This is the same problem asandreas_kupries2004-05-192-7/+108
| | | | | | | | | | | | | * tclIO.h: [SF Tcl Bug 462317], see ChangeLog entry 2001-09-26. The fix done at that time is incomplete. It is possible to get around it if the actual read operation is defered and not executed in the event handler itself. Instead of tracking if we are in an read caused by a synthesized fileevent we now track if the OS has delivered a true event = actual data and bypass the driver if a read finds that there is no actual data waiting. The flag is cleared by a short or full read.
* commit genstubs generated files with unix line endingsdgp2004-05-175-7227/+7227
|
* * generic/tclInt.decls: Restored TclpTime_t kludge to all Kevin B Kenny2004-05-176-7232/+7232
| | | | | | | * generic/tclIntPlatDecls.h: places where it appeared before the * unix/tclUnixPort.h changes of 14 May, because use of * unix/tclUnixTime.h native time_t in its place requires * win/tclWinTime.h: the 8.5 header reforms. [Bug #955146]
* 2004-05-14 Kevin B. Kenny <kennykb@acm.org> Kevin B Kenny2004-05-145-20/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tclInt.decls: Promoted TclpLocaltime and TclpGmtime * generic/tclIntDecls.h: from Unix-specific stubs to the generic * generic/tclIntPlatDecls.h: internal Stubs table. Reran 'genstubs' * generic/tclStubInit.c: * unix/tclUnixPort.h: * generic/tclClock.c: Changed a buggy 'GMT' timezone specification to the correct 'GMT0'. [Bug #922848] * unix/tclUnixThrd.c: Moved TclpGmtime and TclpLocaltime to unix/tclUnixTime.c where they belong. * unix/tclUnixTime.c (TclpGmtime, TclpLocaltime, TclpGetTimeZone, ThreadSafeGMTime [removed], ThreadSafeLocalTime [removed], SetTZIfNecessary, CleanupMemory): Restructured to make sure that the same mutex protects all calls to localtime, gmtime, and tzset. Added a check in front of those calls to make sure that the TZ env var hasn't changed since the last call to tzset, and repeat tzset if necessary. [Bug #942078] Removed a buggy test of the Daylight Saving Time information in 'gettimeofday' in favor of applying 'localtime' to a known value. [Bug #922848] * tests/clock.test (clock-3.14): Added test to make sure that changes to $env(TZ) take effect immediately. * win/tclWinTime.c (TclpLocaltime, TclpGmtime): Added porting layer for 'localtime' and 'gmtime' calls.
* (TclSetLibraryPath): Suppress a warning [from DKF]davygrvy2004-05-061-3/+3
|
* * generic/tclEncoding.c: Added FreeEncoding(systemEncoding) indavygrvy2004-05-061-1/+2
| | | | | TclFinalizeEncodingSubsystem because its ref count was incremented in TclInitEncodingSubsystem.
* * generic/tclInt.h:davygrvy2004-05-062-5/+6
| | | | | | | | | * generic/tclThread.c: * generic/tclEvent.c: * unix/tclUnixThrd.c: * win/tclWinThrd.c: Provisions made so masterLock, initLock, allocLock and joinLock mutexes can be recovered during Tcl_Finalize.
* * generic/tclEvent.c: TclSetLibraryPath's use of caching thedavygrvy2004-05-061-4/+16
| | | | | | | | | | | | | | stringrep of the pathPtr object to TclGetLibraryPath called from another thread was ineffective if the original's stringrep had been invalidated as what happens when it gets muted to a list. * generic/tclInt.h: * generic/tclThread.c: * generic/tclEvent.c: * unix/tclUnixThrd.c: * win/tclWinThrd.c: Provisions made so masterLock, initLock, allocLock and joinLock mutexes can be recovered during Tcl_Finalize.
* * generic/tclIOUtil.c (Tcl_FSChdir): Work-around crash conditionhobbs2004-05-041-1/+48
| | | | | * tests/winFCmd.test (winFCmd-16.12): triggered when $HOME is volumerelative (ie 'C:').