Mercurial > hg > openttd
changeset 14590:ab09f716d042 draft
(svn r19166) -Change: don't print the absolute path to AI script files in the AI debug window, use the relative path from /ai/ instead
author | yexo <yexo@openttd.org> |
---|---|
date | Sat, 20 Feb 2010 13:28:56 +0000 |
parents | ab76ff6b20b1 |
children | 38beac06ddbe |
files | src/3rdparty/squirrel/sqstdlib/sqstdaux.cpp |
diffstat | 1 files changed, 14 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/3rdparty/squirrel/sqstdlib/sqstdaux.cpp +++ b/src/3rdparty/squirrel/sqstdlib/sqstdaux.cpp @@ -2,6 +2,7 @@ #include <squirrel.h> #include <sqstdaux.h> #include <assert.h> +#include <string.h> void sqstd_printcallstack(HSQUIRRELVM v) { @@ -21,7 +22,19 @@ const SQChar *fn=_SC("unknown"); const SQChar *src=_SC("unknown"); if(si.funcname)fn=si.funcname; - if(si.source)src=si.source; + if(si.source) { + /* We don't want to bother users with absolute paths to all AI files. + * Since the path only reaches NoAI code in a formatted string we have + * to strip it here. Let's hope nobody installs openttd in a subdirectory + * of a directory named /ai/. */ + src = scstrstr(si.source, _SC("\\ai\\")); + if (!src) src = scstrstr(si.source, _SC("/ai/")); + if (src) { + src += 4; + } else { + src = si.source; + } + } pf(v,_SC("*FUNCTION [%s()] %s line [%d]\n"),fn,src,si.line); level++; }