Index: generic/nsfStack.c =================================================================== diff -u -r042715c36e6ca53a9712922a03de958476258e02 -r5fb5788e28b2eb11b236a33ba3b3e6466cad4b23 --- generic/nsfStack.c (.../nsfStack.c) (revision 042715c36e6ca53a9712922a03de958476258e02) +++ generic/nsfStack.c (.../nsfStack.c) (revision 5fb5788e28b2eb11b236a33ba3b3e6466cad4b23) @@ -949,8 +949,6 @@ */ NSF_INLINE static void CscFinish_(Tcl_Interp *interp, NsfCallStackContent *cscPtr) { - int allowDestroy = RUNTIME_STATE(interp)->exitHandlerDestroyRound != - NSF_EXITHANDLER_ON_SOFT_DESTROY; NsfObject *object; assert(cscPtr); @@ -974,6 +972,8 @@ * available, since we used NsfCommandPreserve() in CscInit(). */ if (cscPtr->cmdPtr) { + int allowDestroy = RUNTIME_STATE(interp)->exitHandlerDestroyRound != + NSF_EXITHANDLER_ON_SOFT_DESTROY; /* * Track object activations */