mirror of https://github.com/xemu-project/xemu.git
Error: Introduce error_copy()
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
This commit is contained in:
parent
a4acc064f7
commit
79020cfcbb
13
error.c
13
error.c
|
@ -43,6 +43,19 @@ void error_set(Error **errp, const char *fmt, ...)
|
||||||
*errp = err;
|
*errp = err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Error *error_copy(const Error *err)
|
||||||
|
{
|
||||||
|
Error *err_new;
|
||||||
|
|
||||||
|
err_new = g_malloc0(sizeof(*err));
|
||||||
|
err_new->msg = g_strdup(err->msg);
|
||||||
|
err_new->fmt = err->fmt;
|
||||||
|
err_new->obj = err->obj;
|
||||||
|
QINCREF(err_new->obj);
|
||||||
|
|
||||||
|
return err_new;
|
||||||
|
}
|
||||||
|
|
||||||
bool error_is_set(Error **errp)
|
bool error_is_set(Error **errp)
|
||||||
{
|
{
|
||||||
return (errp && *errp);
|
return (errp && *errp);
|
||||||
|
|
5
error.h
5
error.h
|
@ -34,6 +34,11 @@ void error_set(Error **err, const char *fmt, ...) GCC_FMT_ATTR(2, 3);
|
||||||
*/
|
*/
|
||||||
bool error_is_set(Error **err);
|
bool error_is_set(Error **err);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns an exact copy of the error passed as an argument.
|
||||||
|
*/
|
||||||
|
Error *error_copy(const Error *err);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get a human readable representation of an error object.
|
* Get a human readable representation of an error object.
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue