From 4616ff521e301193c8a0cc03bedcf067aece39cb Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Wed, 18 Jul 2012 11:23:56 +0100 Subject: [PATCH] Introduce virReportError macro for general error reporting Nearly every source file does something like #define VIR_FROM_THIS VIR_FROM_FOO #define virFooReportErorr(code, ...) \ virReportErrorHelper(VIR_FROM_THIS, code, __FILE__, \ __FUNCTION__, __LINE__, \ __VA_ARGS__) This creates needless duplication and inconsistent error reporting function names in each file. It is trivial to just have virterror_internal.h provide a virReportError macro that is equivalent * src/util/virterror_internal.h: Define virReportError(code, ...) Signed-off-by: Daniel P. Berrange (cherry picked from commit 7e94acd4fc470ea46ab94f21f7fe718d512ca3b1) --- cfg.mk | 1 + src/util/virprocess.c | 3 --- src/util/virterror_internal.h | 3 +++ 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/cfg.mk b/cfg.mk index 67141a91b2..80fbd149d6 100644 --- a/cfg.mk +++ b/cfg.mk @@ -560,6 +560,7 @@ msg_gen_function += virNetworkReportError msg_gen_function += virNodeDeviceReportError msg_gen_function += virNWFilterReportError msg_gen_function += virRaiseError +msg_gen_function += virReportError msg_gen_function += virReportErrorHelper msg_gen_function += virReportSystemError msg_gen_function += virSecretReportError diff --git a/src/util/virprocess.c b/src/util/virprocess.c index f05f8f315d..9f5e093806 100644 --- a/src/util/virprocess.c +++ b/src/util/virprocess.c @@ -40,9 +40,6 @@ #include "util.h" #include "virstring.h" #include "ignore-value.h" -#define virReportError(code, ...) \ - virReportErrorHelper(VIR_FROM_NONE, code, __FILE__, \ - __FUNCTION__, __LINE__, __VA_ARGS__) #define VIR_FROM_THIS VIR_FROM_NONE diff --git a/src/util/virterror_internal.h b/src/util/virterror_internal.h index b8cb279657..2e8aaf8e26 100644 --- a/src/util/virterror_internal.h +++ b/src/util/virterror_internal.h @@ -76,6 +76,9 @@ void virReportOOMErrorFull(int domcode, # define virReportOOMError() \ virReportOOMErrorFull(VIR_FROM_THIS, __FILE__, __FUNCTION__, __LINE__) +# define virReportError(code, ...) \ + virReportErrorHelper(VIR_FROM_THIS, code, __FILE__, \ + __FUNCTION__, __LINE__, __VA_ARGS__) int virSetError(virErrorPtr newerr); void virDispatchError(virConnectPtr conn);