aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/OptionalModules
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/OptionalModules')
-rw-r--r--OpenSim/Region/OptionalModules/Materials/MaterialsDemoModule.cs26
1 files changed, 10 insertions, 16 deletions
diff --git a/OpenSim/Region/OptionalModules/Materials/MaterialsDemoModule.cs b/OpenSim/Region/OptionalModules/Materials/MaterialsDemoModule.cs
index 4ab6609..5b15a73 100644
--- a/OpenSim/Region/OptionalModules/Materials/MaterialsDemoModule.cs
+++ b/OpenSim/Region/OptionalModules/Materials/MaterialsDemoModule.cs
@@ -178,7 +178,7 @@ namespace OpenSim.Region.OptionalModules.MaterialsDemoModule
178 178
179 void GetStoredMaterialsForPart(SceneObjectPart part) 179 void GetStoredMaterialsForPart(SceneObjectPart part)
180 { 180 {
181 OSDMap OSMaterials = null; 181 OSD OSMaterials = null;
182 OSDArray matsArr = null; 182 OSDArray matsArr = null;
183 183
184 if (part.DynAttrs == null) 184 if (part.DynAttrs == null)
@@ -188,23 +188,20 @@ namespace OpenSim.Region.OptionalModules.MaterialsDemoModule
188 188
189 lock (part.DynAttrs) 189 lock (part.DynAttrs)
190 { 190 {
191 if (part.DynAttrs.ContainsKey("OS:Materials")) 191 if (part.DynAttrs.ContainsStore("OpenSim", "Materials"))
192 OSMaterials = part.DynAttrs["OS:Materials"];
193 if (OSMaterials != null && OSMaterials.ContainsKey("Materials"))
194 { 192 {
195 193 OSDMap materialsStore = part.DynAttrs.GetStore("OpenSim", "Materials");
196 OSD osd = OSMaterials["Materials"]; 194 materialsStore.TryGetValue("Materials", out OSMaterials);
197 if (osd is OSDArray)
198 matsArr = osd as OSDArray;
199 } 195 }
200 }
201 196
202 if (OSMaterials == null) 197 if (OSMaterials != null && OSMaterials is OSDArray)
203 return; 198 matsArr = OSMaterials as OSDArray;
199 else
200 return;
201 }
204 202
205 m_log.Info("[MaterialsDemoModule]: OSMaterials: " + OSDParser.SerializeJsonString(OSMaterials)); 203 m_log.Info("[MaterialsDemoModule]: OSMaterials: " + OSDParser.SerializeJsonString(OSMaterials));
206 204
207
208 if (matsArr == null) 205 if (matsArr == null)
209 { 206 {
210 m_log.Info("[MaterialsDemoModule]: matsArr is null :( "); 207 m_log.Info("[MaterialsDemoModule]: matsArr is null :( ");
@@ -215,7 +212,6 @@ namespace OpenSim.Region.OptionalModules.MaterialsDemoModule
215 { 212 {
216 if (elemOsd != null && elemOsd is OSDMap) 213 if (elemOsd != null && elemOsd is OSDMap)
217 { 214 {
218
219 OSDMap matMap = elemOsd as OSDMap; 215 OSDMap matMap = elemOsd as OSDMap;
220 if (matMap.ContainsKey("ID") && matMap.ContainsKey("Material")) 216 if (matMap.ContainsKey("ID") && matMap.ContainsKey("Material"))
221 { 217 {
@@ -232,7 +228,6 @@ namespace OpenSim.Region.OptionalModules.MaterialsDemoModule
232 } 228 }
233 } 229 }
234 230
235
236 void StoreMaterialsForPart(SceneObjectPart part) 231 void StoreMaterialsForPart(SceneObjectPart part)
237 { 232 {
238 try 233 try
@@ -277,7 +272,7 @@ namespace OpenSim.Region.OptionalModules.MaterialsDemoModule
277 OSMaterials["Materials"] = matsArr; 272 OSMaterials["Materials"] = matsArr;
278 273
279 lock (part.DynAttrs) 274 lock (part.DynAttrs)
280 part.DynAttrs["OS:Materials"] = OSMaterials; 275 part.DynAttrs.SetStore("OpenSim", "Materials", OSMaterials);
281 } 276 }
282 catch (Exception e) 277 catch (Exception e)
283 { 278 {
@@ -285,7 +280,6 @@ namespace OpenSim.Region.OptionalModules.MaterialsDemoModule
285 } 280 }
286 } 281 }
287 282
288
289 public string RenderMaterialsPostCap(string request, string path, 283 public string RenderMaterialsPostCap(string request, string path,
290 string param, IOSHttpRequest httpRequest, 284 string param, IOSHttpRequest httpRequest,
291 IOSHttpResponse httpResponse) 285 IOSHttpResponse httpResponse)