[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v6 01/11] qapi/error: add (Error **errp) cleaning APIs
From: |
Greg Kurz |
Subject: |
Re: [PATCH v6 01/11] qapi/error: add (Error **errp) cleaning APIs |
Date: |
Wed, 15 Jan 2020 08:46:21 +0100 |
On Fri, 10 Jan 2020 22:41:48 +0300
Vladimir Sementsov-Ogievskiy <address@hidden> wrote:
> Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
> ---
>
Reviewed-by: Greg Kurz <address@hidden>
> CC: Cornelia Huck <address@hidden>
> CC: Eric Blake <address@hidden>
> CC: Kevin Wolf <address@hidden>
> CC: Max Reitz <address@hidden>
> CC: Greg Kurz <address@hidden>
> CC: Stefan Hajnoczi <address@hidden>
> CC: Stefano Stabellini <address@hidden>
> CC: Anthony Perard <address@hidden>
> CC: Paul Durrant <address@hidden>
> CC: "Philippe Mathieu-Daudé" <address@hidden>
> CC: Laszlo Ersek <address@hidden>
> CC: Gerd Hoffmann <address@hidden>
> CC: Stefan Berger <address@hidden>
> CC: Markus Armbruster <address@hidden>
> CC: Michael Roth <address@hidden>
> CC: address@hidden
> CC: address@hidden
>
> include/qapi/error.h | 26 ++++++++++++++++++++++++++
> 1 file changed, 26 insertions(+)
>
> diff --git a/include/qapi/error.h b/include/qapi/error.h
> index ad5b6e896d..fa8d51fd6d 100644
> --- a/include/qapi/error.h
> +++ b/include/qapi/error.h
> @@ -309,6 +309,32 @@ void warn_reportf_err(Error *err, const char *fmt, ...)
> void error_reportf_err(Error *err, const char *fmt, ...)
> GCC_FMT_ATTR(2, 3);
>
> +/*
> + * Functions to clean Error **errp: call corresponding Error *err cleaning
> + * function an set pointer to NULL
> + */
> +static inline void error_free_errp(Error **errp)
> +{
> + assert(errp && *errp);
> + error_free(*errp);
> + *errp = NULL;
> +}
> +
> +static inline void error_report_errp(Error **errp)
> +{
> + assert(errp && *errp);
> + error_report_err(*errp);
> + *errp = NULL;
> +}
> +
> +static inline void warn_report_errp(Error **errp)
> +{
> + assert(errp && *errp);
> + warn_report_err(*errp);
> + *errp = NULL;
> +}
> +
> +
> /*
> * Just like error_setg(), except you get to specify the error class.
> * Note: use of error classes other than ERROR_CLASS_GENERIC_ERROR is
- [PATCH v6 00/11] error: auto propagated local_err part I, Vladimir Sementsov-Ogievskiy, 2020/01/10
- [PATCH v6 06/11] pflash: introduce ERRP_AUTO_PROPAGATE, Vladimir Sementsov-Ogievskiy, 2020/01/10
- [PATCH v6 10/11] nbd: introduce ERRP_AUTO_PROPAGATE, Vladimir Sementsov-Ogievskiy, 2020/01/10
- [PATCH v6 01/11] qapi/error: add (Error **errp) cleaning APIs, Vladimir Sementsov-Ogievskiy, 2020/01/10
- [PATCH v6 02/11] error: auto propagated local_err, Vladimir Sementsov-Ogievskiy, 2020/01/10
- [PATCH v6 03/11] scripts: add coccinelle script to use auto propagated errp, Vladimir Sementsov-Ogievskiy, 2020/01/10
- [PATCH v6 11/11] xen: introduce ERRP_AUTO_PROPAGATE, Vladimir Sementsov-Ogievskiy, 2020/01/10