Index: generic/nsf.c =================================================================== diff -u -r8a650e1dbfbed57c711f07b8c8c151f6a9f70088 -r0739b9321294b0f8bbef0d434ae5928aee092df5 --- generic/nsf.c (.../nsf.c) (revision 8a650e1dbfbed57c711f07b8c8c151f6a9f70088) +++ generic/nsf.c (.../nsf.c) (revision 0739b9321294b0f8bbef0d434ae5928aee092df5) @@ -20317,10 +20317,13 @@ if (tcd->object != NULL) { cmd = Tcl_DuplicateObj(tcd->object->cmdName); if (objc > 0) { - Tcl_ListObjAppendList(interp, cmd, - NsfMethodNamePath(interp, - CallStackGetTclFrame(interp, NULL, 1), - MethodName(objv[0]))); + Tcl_Obj *methodObjPath = NsfMethodNamePath(interp, + CallStackGetTclFrame(interp, NULL, 1), + MethodName(objv[0])); + INCR_REF_COUNT(methodObjPath); + Tcl_ListObjAppendList(interp, cmd, methodObjPath); + DECR_REF_COUNT(methodObjPath); + if (objc > 1) { Tcl_ListObjAppendElement(interp, cmd, Tcl_NewListObj(objc-1, objv+1)); }