Index: generic/nsf.c =================================================================== diff -u -rb9e39fb7a7a01c2b07a112700d42060eadde4d8d -r6110e3a41d85384b97604012281b73e51781290e --- generic/nsf.c (.../nsf.c) (revision b9e39fb7a7a01c2b07a112700d42060eadde4d8d) +++ generic/nsf.c (.../nsf.c) (revision 6110e3a41d85384b97604012281b73e51781290e) @@ -12704,18 +12704,19 @@ AliasCmdClientData *tcd = (AliasCmdClientData *)clientData; NsfObject *self = GetSelfObj(interp); CONST char *methodName = ObjStr(objv[0]); + if (!self) { return NsfPrintError(interp, "Cannot resolve 'self', " "probably called outside the context of a Next Scripting Object"); } - assert(tcd->object == self); - - if (self == NULL) { + if (!tcd->object) { return NsfDispatchClientDataError(interp, tcd->object, "object", Tcl_GetCommandName(interp, tcd->aliasCmd)); } + assert(tcd->object == self); + if (Tcl_Command_cmdEpoch(tcd->aliasedCmd)) { NsfObject *defObject = tcd->class ? &(tcd->class->object) : tcd->object; Tcl_Obj **listElements, *entryObj, *targetObj;