diff options
author | Charles Krinke | 2008-09-05 23:21:02 +0000 |
---|---|---|
committer | Charles Krinke | 2008-09-05 23:21:02 +0000 |
commit | 271bbb25574f2a8e579faa6a35187d8a4f5c4662 (patch) | |
tree | b0d42c9d6128e28d6decd30e9b77531e425e45b5 /OpenSim/Region | |
parent | Mantis#2121. Thank you kindly, ChrisDown for a patch that solves: (diff) | |
download | opensim-SC-271bbb25574f2a8e579faa6a35187d8a4f5c4662.zip opensim-SC-271bbb25574f2a8e579faa6a35187d8a4f5c4662.tar.gz opensim-SC-271bbb25574f2a8e579faa6a35187d8a4f5c4662.tar.bz2 opensim-SC-271bbb25574f2a8e579faa6a35187d8a4f5c4662.tar.xz |
Thank you kindly, KrTaylor for a patch that adds:
llParseString functions throw exception when passed a
list of variables and this patch adds logic to solve
this to LSL_Api.cs
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index aa22b2b..74c2d89 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -4431,7 +4431,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4431 | { | 4431 | { |
4432 | int index = str.IndexOf(delimiters[i].ToString()); | 4432 | int index = str.IndexOf(delimiters[i].ToString()); |
4433 | bool found = index != -1; | 4433 | bool found = index != -1; |
4434 | if (found) | 4434 | if (found && String.Empty != delimiters[i].ToString()) |
4435 | { | 4435 | { |
4436 | if ((cindex > index) || (cindex == -1)) | 4436 | if ((cindex > index) || (cindex == -1)) |
4437 | { | 4437 | { |
@@ -4446,9 +4446,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4446 | if (cindex > 0) | 4446 | if (cindex > 0) |
4447 | { | 4447 | { |
4448 | ret.Add(str.Substring(0, cindex)); | 4448 | ret.Add(str.Substring(0, cindex)); |
4449 | if (spacers.Contains(cdeli)) | 4449 | // Cannot use spacers.Contains() because spacers may be either type String or LSLString |
4450 | for (int j = 0; j < spacers.Length; j++) | ||
4450 | { | 4451 | { |
4451 | ret.Add(cdeli); | 4452 | if (spacers.Data[j].ToString() == cdeli) |
4453 | { | ||
4454 | ret.Add(cdeli); | ||
4455 | break; | ||
4456 | } | ||
4452 | } | 4457 | } |
4453 | } | 4458 | } |
4454 | if (cindex == 0 && spacers.Contains(cdeli)) | 4459 | if (cindex == 0 && spacers.Contains(cdeli)) |