aboutsummaryrefslogtreecommitdiff
path: root/error.h
diff options
context:
space:
mode:
authorLuiz Capitulino <lcapitulino@redhat.com>2012-07-27 14:09:29 -0300
committerLuiz Capitulino <lcapitulino@redhat.com>2012-08-13 13:21:21 -0300
commit13f59ae8157e8ec238fa8aefe5309909a1eeb7e2 (patch)
treea60ca832661ef024c876a5315bfa1a0774032ef8 /error.h
parent85465051e0e8a79c3c1df3187c2acaacb10d6232 (diff)
error, qerror: add ErrorClass argument to error functions
The new argument is added to functions qerror_report() and error_set(). It's stored in Error and QError. qerror_report_err() is also updated to take care of it. The QERR_ macros are changed to contain a place holder value for the new argument, so that the value is used on all current calls to qerror_report() and error_set() (and also to initialize qerror_table[]). Next commit will update the QERR_ macros with a proper ErrorClass value. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com>
Diffstat (limited to 'error.h')
-rw-r--r--error.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/error.h b/error.h
index 3d9d96def0..9678752152 100644
--- a/error.h
+++ b/error.h
@@ -13,6 +13,7 @@
#define ERROR_H
#include "compiler.h"
+#include "qapi-types.h"
#include <stdbool.h>
/**
@@ -26,7 +27,7 @@ typedef struct Error Error;
* Currently, qerror.h defines these error formats. This function is not
* meant to be used outside of QEMU.
*/
-void error_set(Error **err, const char *fmt, ...) GCC_FMT_ATTR(2, 3);
+void error_set(Error **err, ErrorClass err_class, const char *fmt, ...) GCC_FMT_ATTR(3, 4);
/**
* Returns true if an indirect pointer to an error is pointing to a valid
@@ -70,6 +71,6 @@ void error_free(Error *err);
* Determine if an error is of a speific type (based on the qerror format).
* Non-QEMU users should get the `class' field to identify the error type.
*/
-bool error_is_type(Error *err, const char *fmt);
+bool error_is_type(Error *err, ErrorClass err_class, const char *fmt);
#endif