libpurple/protocols/silc10/util.c

branch
release-2.x.y
changeset 42954
a98ee2d89a0a
parent 31294
73607ab89c6f
--- a/libpurple/protocols/silc10/util.c	Tue Sep 17 03:53:30 2024 -0500
+++ b/libpurple/protocols/silc10/util.c	Tue Sep 17 14:31:28 2024 -0500
@@ -534,12 +534,11 @@
 		if (mood & SILC_ATTRIBUTE_MOOD_ANXIOUS)
 			g_string_append_printf(s, "[%s] ", _("Anxious"));
 	}
-	if (strlen(s->str)) {
-		*moodstr = s->str;
-		g_string_free(s, FALSE);
-		g_strchomp(*moodstr);
-	} else
+	if (s->len != 0) {
+		*moodstr = g_strchomp(g_string_free(s, FALSE));
+	} else {
 		g_string_free(s, TRUE);
+	}
 
 	attr = silcpurple_get_attr(attrs, SILC_ATTRIBUTE_STATUS_FREETEXT);
 	memset(tmp, 0, sizeof(tmp));
@@ -564,12 +563,11 @@
 		if (contact & SILC_ATTRIBUTE_CONTACT_VIDEO)
 			g_string_append_printf(s, "[%s] ", _("Video Conferencing"));
 	}
-	if (strlen(s->str)) {
-		*contactstr = s->str;
-		g_string_free(s, FALSE);
-		g_strchomp(*contactstr);
-	} else
+	if (s->len != 0) {
+		*contactstr = g_strchomp(g_string_free(s, FALSE));
+	} else {
 		g_string_free(s, TRUE);
+	}
 
 	attr = silcpurple_get_attr(attrs, SILC_ATTRIBUTE_PREFERRED_LANGUAGE);
 	memset(tmp, 0, sizeof(tmp));
@@ -594,11 +592,11 @@
 				device.model ? device.model : "",
 				device.language ? device.language : "");
 	}
-	if (strlen(s->str)) {
-		*devicestr = s->str;
-		g_string_free(s, FALSE);
-	} else
+	if (s->len != 0) {
+		*devicestr = g_string_free(s, FALSE);
+	} else {
 		g_string_free(s, TRUE);
+	}
 
 	attr = silcpurple_get_attr(attrs, SILC_ATTRIBUTE_TIMEZONE);
 	memset(tmp, 0, sizeof(tmp));

mercurial