Index: generic/nsf.c =================================================================== diff -u -r5c038339ae2886d3b1ef4dfb681d395e4f3af9e5 -r4e46398575878d934ccc12e4ae402769a0bdac56 --- generic/nsf.c (.../nsf.c) (revision 5c038339ae2886d3b1ef4dfb681d395e4f3af9e5) +++ generic/nsf.c (.../nsf.c) (revision 4e46398575878d934ccc12e4ae402769a0bdac56) @@ -11641,14 +11641,14 @@ static int ProtectionMatches(Tcl_Interp *interp, int withCallprotection, Tcl_Command cmd) { - int result, isProtected = (Tcl_Command_flags(cmd) & NSF_CMD_PROTECTED_METHOD) != 0; + int result, isProtected = Tcl_Command_flags(cmd) & NSF_CMD_PROTECTED_METHOD; if (withCallprotection == CallprotectionNULL) { withCallprotection = CallprotectionPublicIdx; } switch (withCallprotection) { case CallprotectionAllIdx: result = 1; break; case CallprotectionPublicIdx: result = (isProtected == 0); break; - case CallprotectionProtectedIdx: result = (isProtected == 1); break; + case CallprotectionProtectedIdx: result = (isProtected != 0); break; default: result = 1; } return result;