[libvirt] [PATCH 08/10] util: error: Use a more declarative approach in virErrorMsg

Erik Skultety eskultet at redhat.com
Thu Dec 6 11:29:27 UTC 2018


On Wed, Dec 05, 2018 at 05:47:49PM +0100, Peter Krempa wrote:
> Use a macro to declare how the strings for individual error codes. This
> unifies the used condition and will allow simplifying the code further.
>
> Signed-off-by: Peter Krempa <pkrempa at redhat.com>
> ---
>  src/libvirt_private.syms |   1 +
>  src/util/virerror.c      | 792 +++++++++------------------------------
>  src/util/virerrorpriv.h  |   8 +
>  3 files changed, 188 insertions(+), 613 deletions(-)
>
> diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms
> index 6184030d59..775b33e151 100644
> --- a/src/libvirt_private.syms
> +++ b/src/libvirt_private.syms
> @@ -1753,6 +1753,7 @@ virDispatchError;
>  virErrorCopyNew;
>  virErrorInitialize;
>  virErrorMsg;
> +virErrorMsgStrings;
>  virErrorPreserveLast;
>  virErrorRestore;
>  virErrorSetErrnoFromLastError;
> diff --git a/src/util/virerror.c b/src/util/virerror.c
> index 7444d671bb..d3cd06331f 100644
> --- a/src/util/virerror.c
> +++ b/src/util/virerror.c
> @@ -903,6 +903,178 @@ void virRaiseErrorObject(const char *filename,
>  }
>
>
> +const virErrorMsgTuple virErrorMsgStrings[VIR_ERR_NUMBER_LAST] = {
> +    { VIR_ERR_OK, NULL, NULL },
> +    { VIR_ERR_INTERNAL_ERROR, "internal error", "internal error: %s" },
> +    { VIR_ERR_NO_MEMORY, "out of memory", "out of memory: %s" },
> +    { VIR_ERR_NO_SUPPORT,
> +        "this function is not supported by the connection driver",
> +        "this function is not supported by the connection driver: %s" },
> +    { VIR_ERR_UNKNOWN_HOST, "unknown host", "unknown host %s" },
> +    { VIR_ERR_NO_CONNECT,
> +        "no connection driver available",
> +        "no connection driver available for %s" },
> +    { VIR_ERR_INVALID_CONN, "invalid connection pointer in", "invalid connection pointer in %s" },
> +    { VIR_ERR_INVALID_DOMAIN, "invalid domain pointer in", "invalid domain pointer in %s" },

Most of the messages exceed the 80 chars limit, I think it's reasonable to play
the consistency card (+ personally I find it more readable too) and say that
every member should be on a separate line.

Reviewed-by: Erik Skultety <eskultet at redhat.com>




More information about the libvir-list mailing list