summaryrefslogtreecommitdiff
path: root/interpreter/util/fauhdlstring.c
blob: 693fbc2928e0e11ada15a53fb5bb6b526d012bca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/* $Id: fauhdlstring.c 5105 2012-02-17 21:08:43Z potyra $
 *
 * Helper functions for strings.
 *
 * Copyright (C) 2012 FAUmachine Team <info@faumachine.org>.
 * This program is free software. You can redistribute it and/or modify it
 * under the terms of the GNU General Public License, either version 2 of
 * the License, or (at your option) any later version. See COPYING.
 */

#include "fauhdlstring.h"
#include <assert.h>
#include <string.h>

char *
fauhdlstrdup(const char *src, void *(allocator)(size_t))
{
	char *ret = NULL;
	size_t len = strlen(src) + 1;
	
	ret = allocator(len);
	assert(ret != NULL);

	memcpy(ret, src, len);

	return ret;
}