summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2020-06-21 13:17:04 +0200
committerThomas Haller <thaller@redhat.com>2020-06-26 09:29:55 +0200
commit2edb3aa81aa7580fcd62d0ca542ce52ec0ed5304 (patch)
tree80524416ee349c8f4d3c0442545a6c3898e2b757
parent936e457cc08d387deba8670282145362716c2b55 (diff)
downloadNetworkManager-2edb3aa81aa7580fcd62d0ca542ce52ec0ed5304.tar.gz
libnm: use NMStrBuf in _nm_utils_uuid_generate_from_strings()
-rw-r--r--libnm-core/nm-utils.c34
1 files changed, 17 insertions, 17 deletions
diff --git a/libnm-core/nm-utils.c b/libnm-core/nm-utils.c
index c88afb3238..85effe21a8 100644
--- a/libnm-core/nm-utils.c
+++ b/libnm-core/nm-utils.c
@@ -20,6 +20,7 @@
#include "nm-json.h"
#endif
+#include "nm-glib-aux/nm-str-buf.h"
#include "nm-glib-aux/nm-enum-utils.h"
#include "nm-glib-aux/nm-time-utils.h"
#include "nm-glib-aux/nm-secret-utils.h"
@@ -3300,30 +3301,29 @@ nm_utils_uuid_generate_from_string (const char *s, gssize slen, int uuid_type, g
char *
_nm_utils_uuid_generate_from_strings (const char *string1, ...)
{
- GString *str;
- va_list args;
- const char *s;
- char *uuid;
-
if (!string1)
return nm_utils_uuid_generate_from_string (NULL, 0, NM_UTILS_UUID_TYPE_VERSION3, NM_UTILS_UUID_NS);
- str = g_string_sized_new (120); /* effectively allocates power of 2 (128)*/
+ {
+ nm_auto_str_buf NMStrBuf str = NM_STR_BUF_INIT (NM_UTILS_GET_NEXT_REALLOC_SIZE_104, FALSE);
+ va_list args;
+ const char *s;
- g_string_append_len (str, string1, strlen (string1) + 1);
+ nm_str_buf_append_len (&str, string1, strlen (string1) + 1u);
- va_start (args, string1);
- s = va_arg (args, const char *);
- while (s) {
- g_string_append_len (str, s, strlen (s) + 1);
+ va_start (args, string1);
s = va_arg (args, const char *);
- }
- va_end (args);
-
- uuid = nm_utils_uuid_generate_from_string (str->str, str->len, NM_UTILS_UUID_TYPE_VERSION3, NM_UTILS_UUID_NS);
+ while (s) {
+ nm_str_buf_append_len (&str, s, strlen (s) + 1u);
+ s = va_arg (args, const char *);
+ }
+ va_end (args);
- g_string_free (str, TRUE);
- return uuid;
+ return nm_utils_uuid_generate_from_string (nm_str_buf_get_str_unsafe (&str),
+ str.len,
+ NM_UTILS_UUID_TYPE_VERSION3,
+ NM_UTILS_UUID_NS);
+ }
}
/*****************************************************************************/