diff options
| author | Markus Armbruster | 2020-04-22 15:07:18 +0200 |
|---|---|---|
| committer | Markus Armbruster | 2020-04-29 08:01:52 +0200 |
| commit | 4155c998b6f7618aad0e67c34c2a4aea841114cf (patch) | |
| tree | 9c03c0f983eb949da975844a05c725eb9dcf143b /exec.c | |
| parent | tests/test-logging: Fix test for -dfilter 0..0xffffffffffffffff (diff) | |
| download | qemu-4155c998b6f7618aad0e67c34c2a4aea841114cf.tar.gz qemu-4155c998b6f7618aad0e67c34c2a4aea841114cf.tar.xz qemu-4155c998b6f7618aad0e67c34c2a4aea841114cf.zip | |
qga: Fix qmp_guest_get_memory_blocks() error handling
The Error ** argument must be NULL, &error_abort, &error_fatal, or a
pointer to a variable containing NULL. Passing an argument of the
latter kind twice without clearing it in between is wrong: if the
first call sets an error, it no longer points to NULL for the second
call.
qmp_guest_get_memory_blocks() passes &local_err to
transfer_memory_block() in a loop. If this fails in more than one
iteration, it can trip error_setv()'s assertion.
Fix it to break the loop.
Cc: Michael Roth <mdroth@linux.vnet.ibm.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20200422130719.28225-14-armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Diffstat (limited to 'exec.c')
0 files changed, 0 insertions, 0 deletions
