diff options
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/ScriptEngine/XEngine/LSL2CSConverter.cs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/XEngine/LSL2CSConverter.cs b/OpenSim/Region/ScriptEngine/XEngine/LSL2CSConverter.cs index 9c59108..9e8ea54 100644 --- a/OpenSim/Region/ScriptEngine/XEngine/LSL2CSConverter.cs +++ b/OpenSim/Region/ScriptEngine/XEngine/LSL2CSConverter.cs | |||
@@ -302,6 +302,17 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
302 | RegexOptions.Compiled | RegexOptions.Multiline); | 302 | RegexOptions.Compiled | RegexOptions.Multiline); |
303 | } | 303 | } |
304 | 304 | ||
305 | // Change jumps into goto's and prefix its label | ||
306 | Script = | ||
307 | Regex.Replace(Script, | ||
308 | @"(\W)jump\s+([a-zA-Z_][a-zA-Z_0-9]*)\s*;", | ||
309 | @"$1goto label_$2;", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline); | ||
310 | // and prefix labels so the do not clash with C#'s reserved words | ||
311 | Script = | ||
312 | Regex.Replace(Script, | ||
313 | @"@([a-zA-Z_][a-zA-Z_0-9]*)\s*;", | ||
314 | @"label_$1: ;", RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline); | ||
315 | |||
305 | // Add "void" in front of functions that needs it | 316 | // Add "void" in front of functions that needs it |
306 | Script = | 317 | Script = |
307 | Regex.Replace(Script, | 318 | Regex.Replace(Script, |