xref: /qemu/stubs/error-printf.c (revision 756a98dd)
1397d30e9SPaolo Bonzini #include "qemu/osdep.h"
2397d30e9SPaolo Bonzini #include "qemu/error-report.h"
3*756a98ddSMarc-André Lureau #include "monitor/monitor.h"
4397d30e9SPaolo Bonzini 
error_vprintf(const char * fmt,va_list ap)5679cb8e1SMarkus Armbruster int error_vprintf(const char *fmt, va_list ap)
6397d30e9SPaolo Bonzini {
7679cb8e1SMarkus Armbruster     int ret;
8679cb8e1SMarkus Armbruster 
9977a7204SDaniel P. Berrangé     if (g_test_initialized() && !g_test_subprocess() &&
10977a7204SDaniel P. Berrangé         getenv("QTEST_SILENT_ERRORS")) {
1128017e01SPaolo Bonzini         char *msg = g_strdup_vprintf(fmt, ap);
1228017e01SPaolo Bonzini         g_test_message("%s", msg);
13679cb8e1SMarkus Armbruster         ret = strlen(msg);
1428017e01SPaolo Bonzini         g_free(msg);
15679cb8e1SMarkus Armbruster         return ret;
16397d30e9SPaolo Bonzini     }
17679cb8e1SMarkus Armbruster     return vfprintf(stderr, fmt, ap);
1828017e01SPaolo Bonzini }
19397d30e9SPaolo Bonzini 
error_vprintf_unless_qmp(const char * fmt,va_list ap)20679cb8e1SMarkus Armbruster int error_vprintf_unless_qmp(const char *fmt, va_list ap)
21397d30e9SPaolo Bonzini {
22679cb8e1SMarkus Armbruster     return error_vprintf(fmt, ap);
23397d30e9SPaolo Bonzini }
24