diff --git a/src/lib/src/fwts_tag.c b/src/lib/src/fwts_tag.c
index daf9b46..f0b0c9f 100644
--- a/src/lib/src/fwts_tag.c
+++ b/src/lib/src/fwts_tag.c
@@ -159,8 +159,8 @@ char *fwts_tag_list_to_str(fwts_list *taglist)
 		if (str) {
 			if ((str = realloc(str, len)) == NULL)
 				return NULL;
-			strcat(str, " ");
-			strcat(str, tag);
+			strncat(str, " ", len);
+			strncat(str, tag, len);
 		} else {
 			if ((str = malloc(len)) == NULL)
 				return NULL;
