mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-28 21:30:10 +01:00
shared: add nm_utils_strdup_reset_take() helper
This commit is contained in:
parent
ac626c6892
commit
c4d981959e
1 changed files with 19 additions and 0 deletions
|
|
@ -2204,6 +2204,25 @@ nm_utils_strdup_reset(char **dst, const char *src)
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
static inline gboolean
|
||||
nm_utils_strdup_reset_take(char **dst, char *src)
|
||||
{
|
||||
char *old;
|
||||
|
||||
nm_assert(dst);
|
||||
nm_assert(src != *dst);
|
||||
|
||||
if (nm_streq0(*dst, src)) {
|
||||
if (src)
|
||||
g_free(src);
|
||||
return FALSE;
|
||||
}
|
||||
old = *dst;
|
||||
*dst = src;
|
||||
g_free(old);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void nm_indirect_g_free(gpointer arg);
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue