mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-27 13:30:52 +00:00
monitor: Clean up how monitor_disas() funnels output to monitor
INIT_DISASSEMBLE_INFO() takes an fprintf()-like callback and a FILE * to pass to it. monitor_disas() passes monitor_fprintf() and the current monitor cast to FILE *. monitor_fprintf() casts it right back, and is otherwise identical to monitor_printf(). The type-punning is ugly. Pass qemu_fprintf() and NULL instead. monitor_fprintf() is now unused; delete it. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Message-Id: <20190417191805.28198-16-armbru@redhat.com> [Commit message typo corrected]
This commit is contained in:
parent
90c84c5600
commit
30cc98315f
3
disas.c
3
disas.c
@ -3,6 +3,7 @@
|
|||||||
#include "qemu-common.h"
|
#include "qemu-common.h"
|
||||||
#include "disas/bfd.h"
|
#include "disas/bfd.h"
|
||||||
#include "elf.h"
|
#include "elf.h"
|
||||||
|
#include "qemu/qemu-print.h"
|
||||||
|
|
||||||
#include "cpu.h"
|
#include "cpu.h"
|
||||||
#include "disas/disas.h"
|
#include "disas/disas.h"
|
||||||
@ -609,7 +610,7 @@ void monitor_disas(Monitor *mon, CPUState *cpu,
|
|||||||
int count, i;
|
int count, i;
|
||||||
CPUDebug s;
|
CPUDebug s;
|
||||||
|
|
||||||
INIT_DISASSEMBLE_INFO(s.info, (FILE *)mon, monitor_fprintf);
|
INIT_DISASSEMBLE_INFO(s.info, NULL, qemu_fprintf);
|
||||||
|
|
||||||
s.cpu = cpu;
|
s.cpu = cpu;
|
||||||
s.info.read_memory_func
|
s.info.read_memory_func
|
||||||
|
@ -31,7 +31,6 @@ int monitor_fd_param(Monitor *mon, const char *fdname, Error **errp);
|
|||||||
int monitor_vprintf(Monitor *mon, const char *fmt, va_list ap)
|
int monitor_vprintf(Monitor *mon, const char *fmt, va_list ap)
|
||||||
GCC_FMT_ATTR(2, 0);
|
GCC_FMT_ATTR(2, 0);
|
||||||
int monitor_printf(Monitor *mon, const char *fmt, ...) GCC_FMT_ATTR(2, 3);
|
int monitor_printf(Monitor *mon, const char *fmt, ...) GCC_FMT_ATTR(2, 3);
|
||||||
int monitor_fprintf(FILE *stream, const char *fmt, ...) GCC_FMT_ATTR(2, 3);
|
|
||||||
void monitor_flush(Monitor *mon);
|
void monitor_flush(Monitor *mon);
|
||||||
int monitor_set_cpu(int cpu_index);
|
int monitor_set_cpu(int cpu_index);
|
||||||
int monitor_get_cpu_index(void);
|
int monitor_get_cpu_index(void);
|
||||||
|
11
monitor.c
11
monitor.c
@ -480,17 +480,6 @@ int monitor_printf(Monitor *mon, const char *fmt, ...)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
int monitor_fprintf(FILE *stream, const char *fmt, ...)
|
|
||||||
{
|
|
||||||
int ret;
|
|
||||||
|
|
||||||
va_list ap;
|
|
||||||
va_start(ap, fmt);
|
|
||||||
ret = monitor_vprintf((Monitor *)stream, fmt, ap);
|
|
||||||
va_end(ap);
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void qmp_send_response(Monitor *mon, const QDict *rsp)
|
static void qmp_send_response(Monitor *mon, const QDict *rsp)
|
||||||
{
|
{
|
||||||
const QObject *data = QOBJECT(rsp);
|
const QObject *data = QOBJECT(rsp);
|
||||||
|
Loading…
Reference in New Issue
Block a user