[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 2/6] snapshot: add error set function
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH 2/6] snapshot: add error set function |
Date: |
Fri, 4 Jan 2013 15:55:42 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Mon, Dec 17, 2012 at 02:25:05PM +0800, Wenchao Xia wrote:
This patch has nothing to do with snapshots, so "snapshot: add error set
function" is not a useful commit message. "error: add
error_set_replace()" would be okay. Please use git log <filename> on
the file you are modifying to find good component names (e.g. "block:",
"error:").
> @@ -29,6 +29,9 @@ typedef struct Error Error;
> */
> void error_set(Error **err, ErrorClass err_class, const char *fmt, ...)
> GCC_FMT_ATTR(3, 4);
>
> +void error_set_replace(Error **err, ErrorClass err_class, const char *fmt,
> ...)
> +GCC_FMT_ATTR(3, 4);
> +
> /**
> * Set an indirect pointer to an error given a ErrorClass value and a
> * printf-style human message, followed by a strerror() string if
> @@ -43,6 +46,12 @@ void error_set_errno(Error **err, int os_error, ErrorClass
> err_class, const char
> error_set(err, ERROR_CLASS_GENERIC_ERROR, fmt, ## __VA_ARGS__)
> #define error_setg_errno(err, os_error, fmt, ...) \
> error_set_errno(err, os_error, ERROR_CLASS_GENERIC_ERROR, fmt, ##
> __VA_ARGS__)
> +#define error_setg_replace(err, fmt, ...) do { \
> + if (*err != NULL) { \
> + error_free(*err); \
> + } \
> + error_set(err, ERROR_CLASS_GENERIC_ERROR, fmt, ## __VA_ARGS__); \
> +} while (/*CONSTCOND*/0)
Why not use error_set_replace() to get rid of the error_free() check?
Stefan
- Re: [Qemu-devel] [PATCH 2/6] snapshot: add error set function,
Stefan Hajnoczi <=