aboutsummaryrefslogtreecommitdiff
path: root/src/util/str.c
blob: 933eb8301113804b3acd62e05ae0cb7128677354 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/*
 * ecgen, tool for generating Elliptic curve domain parameters
 * Copyright (C) 2017 J08nY
 */
#include "str.h"
#include <string.h>
#include "util/memory.h"

char *str_join(char *strings[], size_t len) {
	size_t total = 0;
	for (size_t i = 0; i < len; ++i) {
		if (strings[i]) total += strlen(strings[i]);
	}
	char *result = try_calloc(total);
	for (size_t i = 0; i < len; ++i) {
		if (strings[i]) {
			strcat(result, strings[i]);
		}
	}
	return result;
}