nsf.c

Clone Tools
  • last updated 10 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
DispatchUnknownMethod(): Make sure that arcane method names make it into proper unknown error mesages (incl. names representing invalid Tcl lists); tests included; checked by valgrind

  1. … 2 more files in changeset.
Having a working version, test for leaks

  1. … 1 more file in changeset.
First attempt

- add thread IDs to debug lines

Merge branch 'master' of ssh://alice.wu-wien.ac.at/usr/local/src/git-repo/nsf

- Remove manually mixinRegObjs during cleanup to silence sanity checking for object refcounts.

- add pthread id to debug message

UnsetTracedVars(): Provide for a two-pass deletion logic during object shutdown, to account for unset traces possibly reviving an object variable under deletion. This corresponds to a recent memleak fix to Tcl itself (see http://core.tcl.tk/tcl/info/4dbdd9af144dbdd9af14).

Optimize refcount mgmt slightly

Add a piece of explanation on the post-mortem trace mgmt

Get scope right

UnsetTracedVars(): We need to make sure that traces newly created from within an unset trace are deactivated

Add some more documentation hints

Add and improve documentation

Add a piece of documentation to the UnsetTracedVars helper

Provide a minimalistic implementation, more in line with the existing environment

Revert "First attempt of an NsfDeleteVars"

This reverts commit c257b73ed943b9c42af0cc632babacfbf3f91ad3.

Revert "Got cleanup semantics right, all tests pass"

This reverts commit 3d48a6501372aa943f56031ab88e646568e18bcd.

Got cleanup semantics right, all tests pass

First attempt of an NsfDeleteVars

ObjectCmdMethodDispatch(): Get refcounting on method-path lists right, fixing one actual (valgrind) and another potential Tcl_Obj leak

ParamDefsNames(): Fix another Tcl_Obj leak and optimize code slightly (Tcl_Obj is only allocated once the string-matching operation suceeded)

NsfForwardPrintError(): Fix another instance of the NsfMethodNamePath leak

NsfMethodName(): Avoid unnecessary append operation between lists, previously leaking the source list Tcl_Obj

merge

ArgumentParse(): Addressing a series of Tcl_Obj leaks (valgrind)

- removing dead assignment

TopoSortSub(): Make intended true/false comparisons based on int explicit

TopoSort(): cleanup (pt. 3): re-factored TransitiveSubClasses() and DependentSubClasses() into one caller function of TopoSortSub()

TopoSort(): cleanup (pt. 2): renamed TopoSort() TopoSortSub() (to match TopoSortSuper)