From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NnDQj-0000bq-Rc for qemu-devel@nongnu.org; Thu, 04 Mar 2010 10:57:42 -0500 Received: from [199.232.76.173] (port=35959 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NnDQg-0000XW-EI for qemu-devel@nongnu.org; Thu, 04 Mar 2010 10:57:38 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1NnDQT-0000Jn-Hj for qemu-devel@nongnu.org; Thu, 04 Mar 2010 10:57:36 -0500 Received: from oxygen.pond.sub.org ([213.239.205.148]:39629) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NnDQR-0000Hi-8v for qemu-devel@nongnu.org; Thu, 04 Mar 2010 10:57:24 -0500 Received: from blackfin.pond.sub.org (pD9E38041.dip.t-dialin.net [217.227.128.65]) by oxygen.pond.sub.org (Postfix) with ESMTPA id 03307276DB4 for ; Thu, 4 Mar 2010 16:57:14 +0100 (CET) From: Markus Armbruster Date: Thu, 4 Mar 2010 16:56:33 +0100 Message-Id: <1267718231-13303-13-git-send-email-armbru@redhat.com> In-Reply-To: <1267718231-13303-1-git-send-email-armbru@redhat.com> References: <1267718231-13303-1-git-send-email-armbru@redhat.com> Subject: [Qemu-devel] [PATCH 12/50] error: New error_printf() and error_vprintf() List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Luiz Capitulino Signed-off-by: Markus Armbruster --- qemu-error.c | 49 ++++++++++++++++++++++++++++++++++++++++++------- qemu-error.h | 14 ++++++++++++++ 2 files changed, 56 insertions(+), 7 deletions(-) diff --git a/qemu-error.c b/qemu-error.c index 63bcdcf..d20fd0f 100644 --- a/qemu-error.c +++ b/qemu-error.c @@ -1,18 +1,53 @@ +/* + * Error reporting + * + * Copyright (C) 2010 Red Hat Inc. + * + * Authors: + * Markus Armbruster , + * + * This work is licensed under the terms of the GNU GPL, version 2 or later. + * See the COPYING file in the top-level directory. + */ + #include #include "monitor.h" #include "sysemu.h" -void qemu_error(const char *fmt, ...) +/* + * Print to current monitor if we have one, else to stderr. + * TODO should return int, so callers can calculate width, but that + * requires surgery to monitor_vprintf(). Left for another day. + */ +void error_vprintf(const char *fmt, va_list ap) { - va_list args; - - va_start(args, fmt); if (cur_mon) { - monitor_vprintf(cur_mon, fmt, args); + monitor_vprintf(cur_mon, fmt, ap); } else { - vfprintf(stderr, fmt, args); + vfprintf(stderr, fmt, ap); } - va_end(args); +} + +/* + * Print to current monitor if we have one, else to stderr. + * TODO just like error_vprintf() + */ +void error_printf(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + error_vprintf(fmt, ap); + va_end(ap); +} + +void qemu_error(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + error_vprintf(fmt, ap); + va_end(ap); } void qemu_error_internal(const char *file, int linenr, const char *func, diff --git a/qemu-error.h b/qemu-error.h index fa16113..d90f1da 100644 --- a/qemu-error.h +++ b/qemu-error.h @@ -1,6 +1,20 @@ +/* + * Error reporting + * + * Copyright (C) 2010 Red Hat Inc. + * + * Authors: + * Markus Armbruster , + * + * This work is licensed under the terms of the GNU GPL, version 2 or later. + * See the COPYING file in the top-level directory. + */ + #ifndef QEMU_ERROR_H #define QEMU_ERROR_H +void error_vprintf(const char *fmt, va_list ap); +void error_printf(const char *fmt, ...) __attribute__ ((format(printf, 1, 2))); void qemu_error(const char *fmt, ...) __attribute__ ((format(printf, 1, 2))); void qemu_error_internal(const char *file, int linenr, const char *func, const char *fmt, ...) -- 1.6.6.1