summaryrefslogtreecommitdiff
path: root/string.c
diff options
context:
space:
mode:
authortron <tron@openttd.org>2005-07-29 21:52:20 +0000
committertron <tron@openttd.org>2005-07-29 21:52:20 +0000
commit3a162799fda12c14a7c551f05a0515a3e9e7829b (patch)
tree816549a247008ddd1c215593f389850ff7aec406 /string.c
parent1736566e22687b7ed9cf6c641eefc6fccd5611d6 (diff)
downloadopenttd-3a162799fda12c14a7c551f05a0515a3e9e7829b.tar.xz
(svn r2754) Move str_fmt into string.[ch]
Diffstat (limited to 'string.c')
-rw-r--r--string.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/string.c b/string.c
index fd592eaaa..ee5f1152e 100644
--- a/string.c
+++ b/string.c
@@ -3,6 +3,8 @@
#include "stdafx.h"
#include "string.h"
+#include <stdarg.h>
+
void ttd_strlcat(char *dst, const char *src, size_t size)
{
assert(size > 0);
@@ -39,3 +41,19 @@ char* strecpy(char* dst, const char* src, const char* last)
*dst = '\0';
return dst;
}
+
+
+char* CDECL str_fmt(const char* str, ...)
+{
+ char buf[4096];
+ va_list va;
+ int len;
+ char* p;
+
+ va_start(va, str);
+ len = vsprintf(buf, str, va);
+ va_end(va);
+ p = malloc(len + 1);
+ if (p != NULL) memcpy(p, buf, len + 1);
+ return p;
+}