Index: generic/nsf.c =================================================================== diff -u -N -r31c114ee0e7d1eb529430517bf60889da860446f -r87bc503b7d71458e9a6a107a80fe2804e01750dd --- generic/nsf.c (.../nsf.c) (revision 31c114ee0e7d1eb529430517bf60889da860446f) +++ generic/nsf.c (.../nsf.c) (revision 87bc503b7d71458e9a6a107a80fe2804e01750dd) @@ -5076,7 +5076,7 @@ * * Results: * Tcl_Obj of reference count 0, caller has to take care for - * refcounting + * refcounting. * * Side effects: * None. @@ -20271,8 +20271,11 @@ &class, &lookupMethodName, &cmd, &isMixinEntry, &isFilterEntry, &endOfFilterChain, ¤tCmd) == TCL_OK && cmd != NULL) { - methodName = isEnsemble ? ObjStr(NsfMethodNamePath(interp, framePtr, methodName)) : lookupMethodName; + Tcl_Obj *pathObj = NsfMethodNamePath(interp, framePtr, methodName); + + methodName = isEnsemble ? ObjStr(pathObj) : lookupMethodName; result = MethodHandleObj((class != NULL) ? (NsfObject *)class : object, (class == NULL), methodName); + DECR_REF_COUNT(pathObj); } else { result = NULL; }