qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH V4 0/7] monitor: support sub command group in auto completion and help
@ 2013-06-28  3:39 Wenchao Xia
  2013-06-28  3:39 ` [Qemu-devel] [PATCH V4 1/7] monitor: avoid direct use of global *cur_mon in completion functions Wenchao Xia
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Wenchao Xia @ 2013-06-28  3:39 UTC (permalink / raw)
  To: qemu-devel; +Cc: pbonzini, Wenchao Xia, armbru, lcapitulino

Global variable *mon_cmds and *info_cmds are not directly used any more,
*cur_mon is not used in completion related functions. It is possible to create
a monitor with different command table now, but that requirement do not exist
yet, so not changed it to save trouble. Log command is still a special case
now, may be it can be converted as sub group later.

Patch 1-3 make sure the functions can be re-entered safely.

V2:
  General:
  To discard *info_comds more graceful, help related function is modified to support
sub command too.
  Patch 6/7 are added to improve help related functions.
  Patch 5: not directly return to make sure args are freed.

  Address Luiz's comments:
  Split patch into small series.
  struct mon_cmd_t was not moved into header file, instead mon_cmnd_t *cmd_table is
added as a member in struct Monitor.
  5/7: drop original code comments for "info" in monitor_find_completion().

v3:
  5/7: add parameter **args_cmdline in parse_cmdline() to tell next valid
parameter's position. This fix the issue in case command length in input is not
equal to its name's length such as "help|?", and the case input start with
space such as "  s". 
  7/7: better commit message.

v4:
  Address Eric's comments:
  1/7, 2/7, 4/7: better commit title and message.
  1/7 remove useless (char *) in old code, add space around "for ()" in old code.
  3/7: separate code moving patch before usage.
  4/7: add space around "for ()" in old code, add min(nb_args, MAX_ARGS) in free
to make code stronger.

Wenchao Xia (7):
  1 monitor: avoid direct use of global *cur_mon in completion functions
  2 monitor: avoid direct use of global variable *mon_cmds
  3 monitor: code move for parse_cmdline()
  4 monitor: avoid direct use of global *info_cmds in help functions
  5 monitor: support sub commands in auto completion
  6 monitor: improve "help" in auto completion for sub command
  7 monitor: improve "help" to allow show details of single command in sub group

 hmp-commands.hx            |    2 +-
 include/monitor/readline.h |    3 +-
 monitor.c                  |  387 ++++++++++++++++++++++++++++----------------
 readline.c                 |    5 +-
 4 files changed, 254 insertions(+), 143 deletions(-)

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2013-06-29  3:43 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-28  3:39 [Qemu-devel] [PATCH V4 0/7] monitor: support sub command group in auto completion and help Wenchao Xia
2013-06-28  3:39 ` [Qemu-devel] [PATCH V4 1/7] monitor: avoid direct use of global *cur_mon in completion functions Wenchao Xia
2013-06-28  3:39 ` [Qemu-devel] [PATCH V4 2/7] monitor: avoid direct use of global variable *mon_cmds Wenchao Xia
2013-06-28  3:39 ` [Qemu-devel] [PATCH V4 3/7] monitor: code move for parse_cmdline() Wenchao Xia
2013-06-28  3:39 ` [Qemu-devel] [PATCH V4 4/7] monitor: avoid direct use of global *info_cmds in help functions Wenchao Xia
2013-06-28  3:39 ` [Qemu-devel] [PATCH V4 5/7] monitor: support sub commands in auto completion Wenchao Xia
2013-06-28  3:39 ` [Qemu-devel] [PATCH V4 6/7] monitor: improve "help" in auto completion for sub command Wenchao Xia
2013-06-28  3:39 ` [Qemu-devel] [PATCH V4 7/7] monitor: improve "help" to allow show details of single command in sub group Wenchao Xia
2013-06-29  3:42 ` [Qemu-devel] [PATCH V4 0/7] monitor: support sub command group in auto completion and help Wenchao Xia

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).