[Xotcl] bug in XOTcl_DeleteCommandFromToken ?
Gustaf Neumann
neumann at wu-wien.ac.at
Tue Nov 30 23:51:47 CET 2004
Hi Jeff,
On Tuesday 30 November 2004 20:57, Jeff Hobbs wrote:
> I found this oddity in XOTcl_DeleteCommandFromToken:
>
> XOTclCallStackContent *csc = cs->top;
>
> for (; csc > cs->content; csc--) {
> - if (csc->cmdPtr == cmd)
> - csc->cmdPtr = NULL;
> - break;
> + if (csc->cmdPtr == cmd) {
> + csc->cmdPtr = NULL;
> + break;
> + }
> }
> return Tcl_DeleteCommandFromToken(in, cmd);
> }
>
> Is my fix correct, or is there some magic reason why you
> would want to break after the first 'if' check no matter
> what?
The code tries to avoid dangling references from the stack
to cmds. The correct fix is to remove the break.
> BTW - any conditionals without { } is BAD CODE, for exactly
> the above reason.
agreed.
-gustaf
--
Univ.Prof. Dr.Gustaf Neumann
Abteilung für Wirtschaftsinformatik und Neue Medien
Wirtschaftsuniversität Wien, Augasse 2-6, 1090 Wien
More information about the Xotcl
mailing list