diff options
author | dominik <dominik@openttd.org> | 2004-12-13 20:45:55 +0000 |
---|---|---|
committer | dominik <dominik@openttd.org> | 2004-12-13 20:45:55 +0000 |
commit | 9aeb0e1d3064ca32e9ed182cde4daa35e4761b57 (patch) | |
tree | 2e4fc9cb7fb2001f14a2c572517e09e897692008 | |
parent | def5fc3ff7bc5ffc8d3705b467261d8c94047437 (diff) | |
download | openttd-9aeb0e1d3064ca32e9ed182cde4daa35e4761b57.tar.xz |
(svn r1073) - condebugger extended a bit [shows the commandline] (sign_de)
- fixed handling of aliases with parameters (sign_de)
-rw-r--r-- | console.c | 18 |
1 files changed, 14 insertions, 4 deletions
@@ -603,7 +603,8 @@ void IConsoleAliasExec(const char* cmdline, char* tokens[20], byte tokentypes[20 i++; if (cmdline[i] == '+') { t=1; - while ((tokens[t]!=NULL) && (t<20)) { + while ((tokens[t]!=NULL) && (t<20) && + ((tokentypes[t] == ICONSOLE_VAR_STRING) || (tokentypes[t] == ICONSOLE_VAR_UNKNOWN))) { int l2 = strlen(tokens[t]); *linestream = '"'; linestream++; @@ -621,9 +622,13 @@ void IConsoleAliasExec(const char* cmdline, char* tokens[20], byte tokentypes[20 t = ((byte)cmdline[i]) - 64; if ((t<20) && (tokens[t]!=NULL)) { l2 = strlen(tokens[t]); + *linestream = '"'; + linestream++; memcpy(linestream,tokens[t],l2); - x += l2; linestream += l2; + *linestream = '"'; + linestream++; + x += l2+2; } } } else if (cmdline[i] == '\\') { @@ -659,9 +664,11 @@ void IConsoleAliasExec(const char* cmdline, char* tokens[20], byte tokentypes[20 *linestream = '\0'; } - free(linestream_s); + for (i=0; i<c; i++) { + IConsoleCmdExec(lines[i]); + } - for (i=0; i<c; i++) IConsoleCmdExec(lines[i]); + free(linestream_s); } void IConsoleVarInsert(_iconsole_var* item_new, const char* name) @@ -1035,6 +1042,9 @@ void IConsoleCmdExec(const char* cmdstr) int i; int l; + if (_stdlib_con_developer) + IConsolePrintF(_iconsole_color_debug, "CONDEBUG: execution_cmdline: %s", cmdstr); + //** clearing buffer **// for (i = 0; i < 20; i++) { |