diff --git a/OpenSim/Region/Framework/Scenes/UuidGatherer.cs b/OpenSim/Region/Framework/Scenes/UuidGatherer.cs
index aee2d1086a..3978a7d3ae 100644
--- a/OpenSim/Region/Framework/Scenes/UuidGatherer.cs
+++ b/OpenSim/Region/Framework/Scenes/UuidGatherer.cs
@@ -86,23 +86,33 @@ namespace OpenSim.Region.Framework.Scenes
         /// The assets gathered
         public void GatherAssetUuids(UUID assetUuid, AssetType assetType, IDictionary assetUuids)
         {
-            assetUuids[assetUuid] = assetType;
-
-            if (AssetType.Bodypart == assetType || AssetType.Clothing == assetType)
-            {
-                GetWearableAssetUuids(assetUuid, assetUuids);
+            try
+            {               
+                assetUuids[assetUuid] = assetType;
+    
+                if (AssetType.Bodypart == assetType || AssetType.Clothing == assetType)
+                {
+                    GetWearableAssetUuids(assetUuid, assetUuids);
+                }
+                else if (AssetType.Gesture == assetType)
+                {
+                    GetGestureAssetUuids(assetUuid, assetUuids);
+                }
+                else if (AssetType.LSLText == assetType)
+                {
+                    GetScriptAssetUuids(assetUuid, assetUuids);
+                }
+                else if (AssetType.Object == assetType)
+                {
+                    GetSceneObjectAssetUuids(assetUuid, assetUuids);
+                }
             }
-            else if (AssetType.Gesture == assetType)
+            catch (Exception)
             {
-                GetGestureAssetUuids(assetUuid, assetUuids);
-            }
-            else if (AssetType.LSLText == assetType)
-            {
-                GetScriptAssetUuids(assetUuid, assetUuids);
-            }
-            else if (AssetType.Object == assetType)
-            {
-                GetSceneObjectAssetUuids(assetUuid, assetUuids);
+                m_log.ErrorFormat(
+                    "[UUID GATHERER]: Failed to gather uuids for asset id {0}, type {1}", 
+                    assetUuid, assetType);
+                throw;
             }
         }