nsf.c

Clone Tools
  • last updated 8 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
* nsf.c (NsfOUplevelMethod): Add some comments to NsfOUplevelMethod; and clean up after rework.

Merge branch 'master' into uplevel-reform-pt2

* nsf.c, methods.test: Cont'd uplevel reform to sanitize the single-arg case (in light of recent changes to 8.7, TIP 515 and for the sake of XOTcl 1 compatibility): A single arg to uplevel won't be inspected for a level specifier anymore; added tests and TODOs

  1. … 1 more file in changeset.
Silence clang 8 static checker

improve documentation

  1. … 20 more files in changeset.
make spaces after comma regular

  1. … 8 more files in changeset.
avoid one-liner loop

reduce dead store operations and null after dereference

  1. … 1 more file in changeset.
added "pure" declarations

removed null test after dereferences, avoid potentail null dereferences in error cases

  1. … 3 more files in changeset.
removed null test after dereferences

  1. … 3 more files in changeset.
improve code safety and remove dead statement

get rid of warning of static checker, reduce number of returns before end of function

minor code cleanup

  1. … 1 more file in changeset.
add asserts

fix memory leak on "hyper-volatile" objects. it seems, we have to set the _is_autonamed flag in advance of obj initialization

addressing coverty defect 337829 (dereference before null check)

make spelling more consitent

Provide a more conservative change for setting autonamed flag

* nsf.c (NsfCCreateMethod): Fix access of potentially freed object to set the autonamed property (indicated by valdgrind). When destroyed and cleaned during DoObjInitialization, "newObject" will remain as a dangling pointer. Besides, setting the property before DoObjInitialization will make the object property available from within the initcmd or init method.

* nsf.c (NsfProcStubDeleteProc): Plug leakage of command structure (found by valgrind)

muniro formatting changes

* nsf.c (NsfDebugShowObj): For consistency, stick with %x using PRIxPTR

*nsf.c (NsfDebugShowObj): Simplify from using %x to %p, to avoid PTR2UINT (which, starting with 8.7, will return u long, not u int)

Change http:// occurrences to https://, if applicable (URLs tested)

  1. … 57 more files in changeset.
Rewrite URLs containing tcl.tk as authority to tcl-lang.org

  1. … 13 more files in changeset.
move new assertion to the right place

ease human tracing of uninitialized/NULL values

* nsf.c (NsfOUplevelMethod, NsfOUpvarMethod): Silence compiler warnings on nonnull/NULL compares.

* nsf.c (NsfOUplevelMethod, NsfOUpvarMethod, NsfCallstackFindCallingContext): Reform of uplevel and upvar methods, based on the recent feedback by Zoran. First, uplevel and upvar methods, as well as [current callinglevel] now behave consistently (re frame skipping for mixin and filter transparency). If there is no innermost enclosing proc frame, the innermost non-proc (e.g., namespace) frame is selected (rather than a "#0" as default). Second, argument handling for both uplevel (i.e., level sniffing in multi-arg case) and upvar (e.g., made silent TCL_ERROR for invalid argument arities explicit) have been fixed. * Object.man, methods.test: Added documentation for both methods (Object.man) and tests.

  1. … 7 more files in changeset.