* [Qemu-devel] [PATCH] monitor.c: Fix infinite loop in monitor's auto-complete
@ 2018-02-13 12:51 Dr. David Alan Gilbert (git)
2018-02-16 15:56 ` Stefan Hajnoczi
2018-02-16 16:20 ` Dr. David Alan Gilbert
0 siblings, 2 replies; 4+ messages in thread
From: Dr. David Alan Gilbert (git) @ 2018-02-13 12:51 UTC (permalink / raw)
To: qemu-devel, t.pagef.lt; +Cc: kwolf
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Reported-by: Dimitris Karagkasidis <t.pagef.lt@gmail.com>
Fixes: 48fe86f6400574165979e0db6f5937ad487b6888
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
---
monitor.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/monitor.c b/monitor.c
index 0c0faec0a4..bec484440f 100644
--- a/monitor.c
+++ b/monitor.c
@@ -3696,7 +3696,7 @@ static void monitor_find_completion_by_table(Monitor *mon,
{
const char *cmdname;
int i;
- const char *ptype, *str, *name;
+ const char *ptype, *old_ptype, *str, *name;
const mon_cmd_t *cmd;
BlockBackend *blk = NULL;
@@ -3741,7 +3741,9 @@ static void monitor_find_completion_by_table(Monitor *mon,
}
}
str = args[nb_args - 1];
- while (*ptype == '-' && ptype[1] != '\0') {
+ old_ptype = NULL;
+ while (*ptype == '-' && old_ptype != ptype) {
+ old_ptype = ptype;
ptype = next_arg_type(ptype);
}
switch(*ptype) {
--
2.14.3
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH] monitor.c: Fix infinite loop in monitor's auto-complete
2018-02-13 12:51 [Qemu-devel] [PATCH] monitor.c: Fix infinite loop in monitor's auto-complete Dr. David Alan Gilbert (git)
@ 2018-02-16 15:56 ` Stefan Hajnoczi
2018-02-16 16:23 ` Dr. David Alan Gilbert
2018-02-16 16:20 ` Dr. David Alan Gilbert
1 sibling, 1 reply; 4+ messages in thread
From: Stefan Hajnoczi @ 2018-02-16 15:56 UTC (permalink / raw)
To: Dr. David Alan Gilbert (git); +Cc: qemu-devel, t.pagef.lt, kwolf
[-- Attachment #1: Type: text/plain, Size: 382 bytes --]
On Tue, Feb 13, 2018 at 12:51:43PM +0000, Dr. David Alan Gilbert (git) wrote:
> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
>
Please include the details of how to trigger this bug. This helps
justify the patch as well as aiding anyone investigating/backporting the
same issue in the future.
Aside from that:
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 455 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH] monitor.c: Fix infinite loop in monitor's auto-complete
2018-02-13 12:51 [Qemu-devel] [PATCH] monitor.c: Fix infinite loop in monitor's auto-complete Dr. David Alan Gilbert (git)
2018-02-16 15:56 ` Stefan Hajnoczi
@ 2018-02-16 16:20 ` Dr. David Alan Gilbert
1 sibling, 0 replies; 4+ messages in thread
From: Dr. David Alan Gilbert @ 2018-02-16 16:20 UTC (permalink / raw)
To: qemu-devel, t.pagef.lt; +Cc: kwolf
* Dr. David Alan Gilbert (git) (dgilbert@redhat.com) wrote:
> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
>
> Reported-by: Dimitris Karagkasidis <t.pagef.lt@gmail.com>
> Fixes: 48fe86f6400574165979e0db6f5937ad487b6888
> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Queued.
> ---
> monitor.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/monitor.c b/monitor.c
> index 0c0faec0a4..bec484440f 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -3696,7 +3696,7 @@ static void monitor_find_completion_by_table(Monitor *mon,
> {
> const char *cmdname;
> int i;
> - const char *ptype, *str, *name;
> + const char *ptype, *old_ptype, *str, *name;
> const mon_cmd_t *cmd;
> BlockBackend *blk = NULL;
>
> @@ -3741,7 +3741,9 @@ static void monitor_find_completion_by_table(Monitor *mon,
> }
> }
> str = args[nb_args - 1];
> - while (*ptype == '-' && ptype[1] != '\0') {
> + old_ptype = NULL;
> + while (*ptype == '-' && old_ptype != ptype) {
> + old_ptype = ptype;
> ptype = next_arg_type(ptype);
> }
> switch(*ptype) {
> --
> 2.14.3
>
>
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH] monitor.c: Fix infinite loop in monitor's auto-complete
2018-02-16 15:56 ` Stefan Hajnoczi
@ 2018-02-16 16:23 ` Dr. David Alan Gilbert
0 siblings, 0 replies; 4+ messages in thread
From: Dr. David Alan Gilbert @ 2018-02-16 16:23 UTC (permalink / raw)
To: Stefan Hajnoczi; +Cc: kwolf, t.pagef.lt, qemu-devel
* Stefan Hajnoczi (stefanha@gmail.com) wrote:
> On Tue, Feb 13, 2018 at 12:51:43PM +0000, Dr. David Alan Gilbert (git) wrote:
> > From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
> >
>
> Please include the details of how to trigger this bug. This helps
> justify the patch as well as aiding anyone investigating/backporting the
> same issue in the future.
OK, I'll include Dimitris's:
The QEMU monitor enters an infinite loop when trying to auto-complete commands
that accept only optional parameters. The commands currently affected by this
issue are 'info registers' and 'info mtree'.
> Aside from that:
> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Thanks!
Dave
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-02-16 16:23 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-13 12:51 [Qemu-devel] [PATCH] monitor.c: Fix infinite loop in monitor's auto-complete Dr. David Alan Gilbert (git)
2018-02-16 15:56 ` Stefan Hajnoczi
2018-02-16 16:23 ` Dr. David Alan Gilbert
2018-02-16 16:20 ` Dr. David Alan Gilbert
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).