diff options
author | Justin Clark-Casey (justincc) | 2013-12-14 01:48:03 +0000 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2013-12-14 01:48:03 +0000 |
commit | e7a294e739abc1e255d205a83aeadb679f098569 (patch) | |
tree | 85af1cf38fbdd1fa459cfcd2f9f28266e2d93b43 /OpenSim/Region | |
parent | After previous discussion, put eye-catcher 'SCRIPT READY' messages to console... (diff) | |
download | opensim-SC-e7a294e739abc1e255d205a83aeadb679f098569.zip opensim-SC-e7a294e739abc1e255d205a83aeadb679f098569.tar.gz opensim-SC-e7a294e739abc1e255d205a83aeadb679f098569.tar.bz2 opensim-SC-e7a294e739abc1e255d205a83aeadb679f098569.tar.xz |
Wrap analysis of the particle system in the UUID Gatherer in a separate try/catch as sometimes it appears that this can be corrupt.
As per Oren's suggestion.
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/UuidGatherer.cs | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/OpenSim/Region/Framework/Scenes/UuidGatherer.cs b/OpenSim/Region/Framework/Scenes/UuidGatherer.cs index 502c748..3e074b9 100644 --- a/OpenSim/Region/Framework/Scenes/UuidGatherer.cs +++ b/OpenSim/Region/Framework/Scenes/UuidGatherer.cs | |||
@@ -181,9 +181,18 @@ namespace OpenSim.Region.Framework.Scenes | |||
181 | 181 | ||
182 | if (part.ParticleSystem.Length > 0) | 182 | if (part.ParticleSystem.Length > 0) |
183 | { | 183 | { |
184 | Primitive.ParticleSystem ps = new Primitive.ParticleSystem(part.ParticleSystem, 0); | 184 | try |
185 | if (ps.Texture != UUID.Zero) | 185 | { |
186 | assetUuids[ps.Texture] = AssetType.Texture; | 186 | Primitive.ParticleSystem ps = new Primitive.ParticleSystem(part.ParticleSystem, 0); |
187 | if (ps.Texture != UUID.Zero) | ||
188 | assetUuids[ps.Texture] = AssetType.Texture; | ||
189 | } | ||
190 | catch (Exception e) | ||
191 | { | ||
192 | m_log.WarnFormat( | ||
193 | "[UUID GATHERER]: Could not check particle system for part {0} {1} in object {2} {3} since it is corrupt. Continuing.", | ||
194 | part.Name, part.UUID, sceneObject.Name, sceneObject.UUID); | ||
195 | } | ||
187 | } | 196 | } |
188 | 197 | ||
189 | TaskInventoryDictionary taskDictionary = (TaskInventoryDictionary)part.TaskInventory.Clone(); | 198 | TaskInventoryDictionary taskDictionary = (TaskInventoryDictionary)part.TaskInventory.Clone(); |