diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Physics/Meshing/Meshmerizer.cs | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs index d770ad1..3386e72 100644 --- a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs +++ b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs | |||
@@ -276,7 +276,7 @@ namespace OpenSim.Region.Physics.Meshing | |||
276 | 276 | ||
277 | m_log.Debug("[MESH]: experimental mesh proxy generation"); | 277 | m_log.Debug("[MESH]: experimental mesh proxy generation"); |
278 | 278 | ||
279 | OSD meshOsd; | 279 | OSD meshOsd = null; |
280 | 280 | ||
281 | if (primShape.SculptData.Length <= 0) | 281 | if (primShape.SculptData.Length <= 0) |
282 | { | 282 | { |
@@ -287,7 +287,14 @@ namespace OpenSim.Region.Physics.Meshing | |||
287 | long start = 0; | 287 | long start = 0; |
288 | using (MemoryStream data = new MemoryStream(primShape.SculptData)) | 288 | using (MemoryStream data = new MemoryStream(primShape.SculptData)) |
289 | { | 289 | { |
290 | meshOsd = (OSDMap)OSDParser.DeserializeLLSDBinary(data); | 290 | try |
291 | { | ||
292 | meshOsd = (OSDMap)OSDParser.DeserializeLLSDBinary(data); | ||
293 | } | ||
294 | catch (Exception e) | ||
295 | { | ||
296 | m_log.Error("[MESH]: Exception deserializing mesh asset header:" + e.ToString()); | ||
297 | } | ||
291 | start = data.Position; | 298 | start = data.Position; |
292 | } | 299 | } |
293 | 300 | ||