diff options
author | Thomas Haller <thaller@redhat.com> | 2023-10-26 13:39:43 +0200 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2023-11-15 17:59:25 +0100 |
commit | 6c83f7bd67916c67071e6252f51f7aa37b3f675f (patch) | |
tree | 0b08d501716c8605fab962818cf6c8820f1415f5 | |
parent | 73947cdfd011041b9d9a591ff77320620df2882f (diff) |
glib-aux: add nm_strvarray_ensure_and_add() helper
-rw-r--r-- | src/libnm-glib-aux/nm-shared-utils.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/libnm-glib-aux/nm-shared-utils.h b/src/libnm-glib-aux/nm-shared-utils.h index f27f6f7d73..9d98e86f46 100644 --- a/src/libnm-glib-aux/nm-shared-utils.h +++ b/src/libnm-glib-aux/nm-shared-utils.h @@ -3128,6 +3128,23 @@ nm_strvarray_remove_first(GArray *strv, const char *needle) return TRUE; } +static inline void +nm_strvarray_ensure_and_add(GArray **p, const char *str) +{ + nm_strvarray_add(nm_strvarray_ensure(p), str); +} + +static inline gboolean +nm_strvarray_ensure_and_add_unique(GArray **p, const char *str) +{ + nm_assert(p); + + if (nm_strvarray_contains(*p, str)) + return FALSE; + nm_strvarray_add(nm_strvarray_ensure(p), str); + return TRUE; +} + static inline int nm_strvarray_cmp(const GArray *a, const GArray *b) { |