[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v1][ 02/14] QError: Introduce qerror_format()
From: |
Michael Roth |
Subject: |
[Qemu-devel] [PATCH v1][ 02/14] QError: Introduce qerror_format() |
Date: |
Wed, 1 Jun 2011 12:14:48 -0500 |
From: Luiz Capitulino <address@hidden>
Will be used by new error propagation framework to convert Error objects
into human-readable form.
Signed-off-by: Luiz Capitulino <address@hidden>
Signed-off-by: Michael Roth <address@hidden>
---
qerror.c | 15 +++++++++++++++
qerror.h | 1 +
2 files changed, 16 insertions(+), 0 deletions(-)
diff --git a/qerror.c b/qerror.c
index af6ed39..c18641f 100644
--- a/qerror.c
+++ b/qerror.c
@@ -400,6 +400,21 @@ static QString *qerror_format_desc(QDict *error,
return qstring;
}
+QString *qerror_format(const char *fmt, QDict *error)
+{
+ const QErrorStringTable *entry = NULL;
+ int i;
+
+ for (i = 0; qerror_table[i].error_fmt; i++) {
+ if (strcmp(qerror_table[i].error_fmt, fmt) == 0) {
+ entry = &qerror_table[i];
+ break;
+ }
+ }
+
+ return qerror_format_desc(error, entry);
+}
+
/**
* qerror_human(): Format QError data into human-readable string.
*/
diff --git a/qerror.h b/qerror.h
index df61d2c..13ad9d4 100644
--- a/qerror.h
+++ b/qerror.h
@@ -39,6 +39,7 @@ QString *qerror_human(const QError *qerror);
void qerror_print(QError *qerror);
void qerror_report_internal(const char *file, int linenr, const char *func,
const char *fmt, ...) GCC_FMT_ATTR(4, 5);
+QString *qerror_format(const char *fmt, QDict *error);
#define qerror_report(fmt, ...) \
qerror_report_internal(__FILE__, __LINE__, __func__, fmt, ## __VA_ARGS__)
QError *qobject_to_qerror(const QObject *obj);
--
1.7.0.4
- [Qemu-devel] [QAPI+QGA 1/3] Error propagation and JSON parser fix-ups, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 03/14] Introduce the new error framework, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 09/14] json-parser: detect premature EOI, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 05/14] json-streamer: allow recovery after bad input, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 12/14] json-lexer: make lexer error-recovery more deterministic, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 02/14] QError: Introduce qerror_format(),
Michael Roth <=
- [Qemu-devel] [PATCH v1][ 13/14] json-streamer: add handling for JSON_ERROR token/state, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 10/14] json-lexer: reset the lexer state on an invalid token, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 01/14] QError: Introduce qerror_format_desc(), Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 04/14] json-parser: propagate error from parser, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 08/14] json-streamer: make sure to reset token_size after emitting a token list, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 06/14] json-lexer: limit the maximum size of a given token, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 07/14] json-streamer: limit the maximum recursion depth and maximum token count, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 14/14] json-parser: add handling for NULL token list, Michael Roth, 2011/06/01
- [Qemu-devel] [PATCH v1][ 11/14] json-lexer: fix flushing logic to not always go to error state, Michael Roth, 2011/06/01