mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-30 03:50:10 +01:00
shared: add nm_g_set_error_take*() util
This commit is contained in:
parent
d21439eaa0
commit
9b2d5742c1
1 changed files with 24 additions and 0 deletions
|
|
@ -684,6 +684,30 @@ _nm_g_slice_free_fcn_define (32)
|
|||
|
||||
/*****************************************************************************/
|
||||
|
||||
static inline void
|
||||
nm_g_set_error_take (GError **error, GError *error_take)
|
||||
{
|
||||
if (!error_take)
|
||||
g_return_if_reached ();
|
||||
if (!error) {
|
||||
g_error_free (error_take);
|
||||
return;
|
||||
}
|
||||
if (*error) {
|
||||
g_error_free (error_take);
|
||||
g_return_if_reached ();
|
||||
}
|
||||
*error = error_take;
|
||||
}
|
||||
|
||||
#define nm_g_set_error_take_lazy(error, error_take_lazy) \
|
||||
G_STMT_START { \
|
||||
GError **_error = (error); \
|
||||
\
|
||||
if (_error) \
|
||||
nm_g_set_error_take (_error, (error_take_lazy)); \
|
||||
} G_STMT_END
|
||||
|
||||
/**
|
||||
* NMUtilsError:
|
||||
* @NM_UTILS_ERROR_UNKNOWN: unknown or unclassified error
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue