summaryrefslogtreecommitdiff
path: root/string.c
diff options
context:
space:
mode:
authorDarkvater <darkvater@openttd.org>2006-11-16 17:41:24 +0000
committerDarkvater <darkvater@openttd.org>2006-11-16 17:41:24 +0000
commitedcbb105656514e6b422d2d5e04f6dcb2e30459b (patch)
tree7c2185201a93f3c8c674dabd72895508d9d7290a /string.c
parent81b84c909189d05d8f6bc08218d1f4208fdeb99e (diff)
downloadopenttd-edcbb105656514e6b422d2d5e04f6dcb2e30459b.tar.xz
(svn r7172) -Fix [r6931]: The console showed '?' characters instead of colours. Now strip all
colours for the console. It's a bit magicky (magic numbers) but UTF8 fixes that soon.
Diffstat (limited to 'string.c')
-rw-r--r--string.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/string.c b/string.c
index 297e931fb..f6f10de13 100644
--- a/string.c
+++ b/string.c
@@ -72,6 +72,19 @@ void str_validate(char *str)
if (!IsValidAsciiChar(*str, CS_ALPHANUMERAL)) *str = '?';
}
+void str_strip_colours(char *str)
+{
+ char *dst = str;
+ for (; *str != '\0';) {
+ if (*str >= 15 && *str <= 31) { // magic colour codes
+ str++;
+ } else {
+ *dst++ = *str++;
+ }
+ }
+ *dst = '\0';
+}
+
/**
* Only allow certain keys. You can define the filter to be used. This makes
* sure no invalid keys can get into an editbox, like BELL.