diff options
author | Melanie Thielker | 2008-09-20 16:24:36 +0000 |
---|---|---|
committer | Melanie Thielker | 2008-09-20 16:24:36 +0000 |
commit | 5a1be7835c663095207ef1e4494331c1c1e867bc (patch) | |
tree | 88e8b8246fbc6f25b15448aaef7414001862eddc /OpenSim/Region/ScriptEngine/Shared/Api/Runtime | |
parent | Add <expire> tag to data snapshot to give the search server an idea (diff) | |
download | opensim-SC_OLD-5a1be7835c663095207ef1e4494331c1c1e867bc.zip opensim-SC_OLD-5a1be7835c663095207ef1e4494331c1c1e867bc.tar.gz opensim-SC_OLD-5a1be7835c663095207ef1e4494331c1c1e867bc.tar.bz2 opensim-SC_OLD-5a1be7835c663095207ef1e4494331c1c1e867bc.tar.xz |
XEngine: Fix llGetListEntryType to return the correct type for the LSL types.
Change serialization to omit types it can't deal with.
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api/Runtime')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Runtime/ScriptBase.cs | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/ScriptBase.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/ScriptBase.cs index f856ea5..b32fce6 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/ScriptBase.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/ScriptBase.cs | |||
@@ -138,7 +138,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
138 | c.Data = data; | 138 | c.Data = data; |
139 | vars[field.Name] = c; | 139 | vars[field.Name] = c; |
140 | } | 140 | } |
141 | else | 141 | else if(field.FieldType == typeof(LSL_Types.LSLInteger) || |
142 | field.FieldType == typeof(LSL_Types.LSLString) || | ||
143 | field.FieldType == typeof(LSL_Types.LSLFloat) || | ||
144 | field.FieldType == typeof(Int32) || | ||
145 | field.FieldType == typeof(Double) || | ||
146 | field.FieldType == typeof(Single) || | ||
147 | field.FieldType == typeof(String) || | ||
148 | field.FieldType == typeof(Byte) || | ||
149 | field.FieldType == typeof(Short)) | ||
142 | { | 150 | { |
143 | vars[field.Name] = field.GetValue(this); | 151 | vars[field.Name] = field.GetValue(this); |
144 | } | 152 | } |
@@ -161,7 +169,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
161 | Array.Copy(data, 0, v.Data, 0, data.Length); | 169 | Array.Copy(data, 0, v.Data, 0, data.Length); |
162 | m_Fields[var.Key].SetValue(this, v); | 170 | m_Fields[var.Key].SetValue(this, v); |
163 | } | 171 | } |
164 | else | 172 | else if(field.FieldType == typeof(LSL_Types.LSLInteger) || |
173 | field.FieldType == typeof(LSL_Types.LSLString) || | ||
174 | field.FieldType == typeof(LSL_Types.LSLFloat) || | ||
175 | field.FieldType == typeof(Int32) || | ||
176 | field.FieldType == typeof(Double) || | ||
177 | field.FieldType == typeof(Single) || | ||
178 | field.FieldType == typeof(String) || | ||
179 | field.FieldType == typeof(Byte) || | ||
180 | field.FieldType == typeof(Short)) | ||
165 | { | 181 | { |
166 | m_Fields[var.Key].SetValue(this, var.Value); | 182 | m_Fields[var.Key].SetValue(this, var.Value); |
167 | } | 183 | } |