mirror of
https://github.com/qemu/qemu.git
synced 2024-12-18 09:43:38 +08:00
QError: Introduce qerror_format()
Will be used by new error propagation framework to convert Error objects into human-readable form. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
a12eeaaa4f
commit
87c2f59166
15
qerror.c
15
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.
|
||||
*/
|
||||
|
1
qerror.h
1
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);
|
||||
|
Loading…
Reference in New Issue
Block a user