[Spice-devel] [PATCH spice-common] common/log.h: add spice_client_error

Marc-André Lureau marcandre.lureau at gmail.com
Thu Jul 5 04:10:44 PDT 2012


On Thu, Jul 5, 2012 at 11:38 AM, Alon Levy <alevy at redhat.com> wrote:
> To be used to mark client protocol violations, more easily greppable.
> ---
>  common/log.h |   11 +++++++++++
>  1 file changed, 11 insertions(+)
>
> diff --git a/common/log.h b/common/log.h
> index 37c491f..df8a756 100644
> --- a/common/log.h
> +++ b/common/log.h
> @@ -28,6 +28,10 @@ SPICE_BEGIN_DECLS
>  #define SPICE_LOG_DOMAIN "Spice"
>  #endif
>
> +#ifndef SPICE_CLIENT_LOG_DOMAIN
> +#define SPICE_CLIENT_LOG_DOMAIN "Spice(client)"
> +#endif
> +
>  #define SPICE_STRINGIFY(x) SPICE_STRINGIFY_ARG (x)
>  #define SPICE_STRINGIFY_ARG(x) #x
>
> @@ -85,6 +89,13 @@ void spice_log(const char *log_domain,
>  } SPICE_STMT_END
>  #endif
>
> +#ifndef spice_client_error
> +#define spice_client_error(format, ...) SPICE_STMT_START {              \
> +    spice_log(SPICE_CLIENT_LOG_DOMAIN,SPICE_LOG_LEVEL_ERROR, SPICE_STRLOC, \
> +              __FUNCTION__, format, ## __VA_ARGS__);                    \
> +} SPICE_STMT_END
> +#endif
> +

Well, the idea is that you can define SPICE_LOG_DOMAIN before
including this file, either in your code, or in the Makefile, adding a
CFLAGS such as -DSPICE_LOG_DOMAIN=SpiceClient.

This way you don't need to introduce "domain specific" functions etc..

(just like  with glib logging)

cheers
-- 
Marc-André Lureau


More information about the Spice-devel mailing list