monitor: refactor error_vprintf()
The monitor_vprintf() code will return -1 if either the monitor is NULL, or the monitor is QMP. The error_vprintf() code can take advantage of this to avoid having to duplicate the same checks, and instead simply look at the return value. Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
@@ -269,16 +269,21 @@ void monitor_printc(Monitor *mon, int c)
|
||||
}
|
||||
|
||||
/*
|
||||
* Print to current monitor if we have one, else to stderr.
|
||||
* Print to the current human monitor if we have one, else to stderr.
|
||||
*/
|
||||
int error_vprintf(const char *fmt, va_list ap)
|
||||
{
|
||||
Monitor *cur_mon = monitor_cur();
|
||||
|
||||
if (cur_mon && !monitor_cur_is_qmp()) {
|
||||
return monitor_vprintf(cur_mon, fmt, ap);
|
||||
/*
|
||||
* This will return -1 if 'cur_mon' is NULL, or is QMP.
|
||||
* IOW this will only print if in HMP, otherwise we
|
||||
* fallback to stderr for QMP / no-monitor scenarios.
|
||||
*/
|
||||
int ret = monitor_vprintf(cur_mon, fmt, ap);
|
||||
if (ret == -1) {
|
||||
ret = vfprintf(stderr, fmt, ap);
|
||||
}
|
||||
return vfprintf(stderr, fmt, ap);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static MonitorQAPIEventConf monitor_qapi_event_conf[QAPI_EVENT__MAX] = {
|
||||
|
||||
Reference in New Issue
Block a user