aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2010-02-19 10:30:05 +0100
committerMarkus Armbruster <armbru@redhat.com>2010-03-16 17:45:34 +0100
commitaa924ae7306f18f258c48f070c0d06215f157d0f (patch)
tree39c77b0aa85bf5f9d02cadb47ffb98aa28b3d02d
parentac8dae679498aec6d454926b0b83df27373604e7 (diff)
error: New error_printf_unless_qmp()
-rw-r--r--qemu-error.c11
-rw-r--r--qemu-error.h2
2 files changed, 13 insertions, 0 deletions
diff --git a/qemu-error.c b/qemu-error.c
index a8c178b332..5d5fe3742f 100644
--- a/qemu-error.c
+++ b/qemu-error.c
@@ -41,6 +41,17 @@ void error_printf(const char *fmt, ...)
va_end(ap);
}
+void error_printf_unless_qmp(const char *fmt, ...)
+{
+ va_list ap;
+
+ if (!monitor_cur_is_qmp()) {
+ va_start(ap, fmt);
+ error_vprintf(fmt, ap);
+ va_end(ap);
+ }
+}
+
static Location std_loc = {
.kind = LOC_NONE
};
diff --git a/qemu-error.h b/qemu-error.h
index 88e0b70567..e63c6ab31d 100644
--- a/qemu-error.h
+++ b/qemu-error.h
@@ -32,6 +32,8 @@ void loc_set_file(const char *fname, int lno);
void error_vprintf(const char *fmt, va_list ap);
void error_printf(const char *fmt, ...) __attribute__ ((format(printf, 1, 2)));
+void error_printf_unless_qmp(const char *fmt, ...)
+ __attribute__ ((format(printf, 1, 2)));
void error_print_loc(void);
void error_set_progname(const char *argv0);
void error_report(const char *fmt, ...) __attribute__ ((format(printf, 1, 2)));