improve command_done() API and docs
authorZachary T Welch <zw@superlucidity.net>
Sun, 29 Nov 2009 23:58:16 +0000 (15:58 -0800)
committerZachary T Welch <zw@superlucidity.net>
Tue, 1 Dec 2009 00:29:34 +0000 (16:29 -0800)
commitbc9ae740730efacc2daa3ecbdb0ee75601ec18df
tree732893349ef7029662ecc98fd42d77e698d3d5b5
parentc0630d8a58c525e09aa938c7a50d4c99d39a93a3
improve command_done() API and docs

command_done() does not need to return an error, but it needed
Doxygen comment.  Provide some for copy_command_context as well.

Note: this audit revealed some potential bugs with the command context
implementation.  There was a reason that commands were added at the
end of the list.  Shallow copying of command_context means that
the list is shared between them.  And commands added at the top-level
before the pre-existing commands will not be available in the shared
context as they were before.  Yikes!

Fortunately, this does not seem to occur in general use, as
'add_help_text' gets registered in startup.tcl and claims the first slot
in my own test cases.  Thus, it seems that we have been masking the issue
for now, but it shows the need for further architectural improvement in
the core command module.
src/helper/command.c
src/helper/command.h