magic/tcltk
Darryl L. Miles 142b7e5a78 tclmagic.c: memleak Tcl ref counting over Eval memory leak
API docs indicate the original usage seems ok.
Calling Tcl_GetIndexFromObj() is allowed with a refcount == 0.
But in actual usage it leaks the Tcl_NewStringObj() memory across the
Tcl_EvalObjv() call like the object accounting system doesn't work on
that anymore (because the use of Tcl_EvalObjv() disrupted things).

Looking at the code nearby it increments refs (for all recently created
objs) and decrements around Tcl_EvalEx() for the actual data the 'eval'
needs pinned and is working on.

If we just repeat this same pattern but with 'objv0' the memory leak is
gone.  The decrement must wake it up / make it remember what to do.
So this required covering all the exit paths to decrement as well.
2025-07-26 17:46:59 -04:00
..
Makefile EDIT: wrapper maketoolbar method refactored into a separate script, with changes to the toolbar. Reorder layers functionality added as well 2023-12-15 15:54:05 -05:00
bsitools.tcl Updates from running the fix-ending-whitespace script. 2020-05-23 17:13:14 -04:00
cellmgr.tcl Added a "Place" button in the cell manager after realizing that 2023-09-12 11:52:15 -04:00
console.tcl Updates from running the fix-ending-whitespace script. 2020-05-23 17:13:14 -04:00
drcmgr.tcl Updates from running the fix-ending-whitespace script. 2020-05-23 17:13:14 -04:00
ext2sim.sh.in Allow for bash in locations other than /bin 2023-04-22 14:13:57 -04:00
ext2spice.sh.in Allow for bash in locations other than /bin 2023-04-22 14:13:57 -04:00
libmgr.tcl Updates from running the fix-ending-whitespace script. 2020-05-23 17:13:14 -04:00
magic.sh.in Allow for bash in locations other than /bin 2023-04-22 14:13:57 -04:00
magic.tcl.in Corrected an issue with passing a Tcl script as a command-line 2024-04-10 20:51:05 -04:00
magicdnull.c Rewrote the configuration scripts, makefiles, and some initialization 2017-10-13 10:28:07 -04:00
magicexec.c Removed the "macosx" definition from the configuration file, which 2017-10-14 18:42:24 -04:00
magicps.pro Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
mazeroute.tcl Updates from running the fix-ending-whitespace script. 2020-05-23 17:13:14 -04:00
readspice.tcl Made a simple but important change to "readspice.tcl" to unexpand 2023-03-08 11:14:22 -05:00
reorderLayers.tcl EDIT: wrapper maketoolbar method refactored into a separate script, with changes to the toolbar. Reorder layers functionality added as well 2023-12-15 15:54:05 -05:00
socketcmd.tcl Updates from running the fix-ending-whitespace script. 2020-05-23 17:13:14 -04:00
strip_reflibs.tcl Updates from running the fix-ending-whitespace script. 2020-05-23 17:13:14 -04:00
tclmagic.c tclmagic.c: memleak Tcl ref counting over Eval memory leak 2025-07-26 17:46:59 -04:00
tclmagic.h TCL9: Tcl_InitStubs(version="9.0") 2025-01-04 11:08:01 -05:00
techbuilder.tcl Create techbuilder.tcl 2021-08-28 12:58:58 -04:00
texthelper.tcl Updates from running the fix-ending-whitespace script. 2020-05-23 17:13:14 -04:00
tkcon.tcl Modified some lines in tkcon.tcl that make it compatible with both 2025-01-04 14:09:58 -05:00
tkshell.tcl Initial commit at Tue Apr 25 08:41:48 EDT 2017 by tim on stravinsky 2017-04-25 08:41:48 -04:00
toolbar.tcl Finally got around to restoring the behavior of the toolbar with 2024-10-01 16:01:28 -04:00
toolkit.tcl Corrected an issue with "instance celldef" when the instance name 2024-04-05 17:47:44 -04:00
toolkit_rev0.tcl Updates from running the fix-ending-whitespace script. 2020-05-23 17:13:14 -04:00
tools.tcl Extended the "paint" and "erase" commands to accept an option 2023-07-08 17:34:00 -04:00
wrapper.tcl Corrected the previous commit, which did not fix the problem that 2024-10-01 21:14:12 -04:00