diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 42ce61e688..962e5e12e6 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs @@ -3310,7 +3310,11 @@ namespace OpenSim.Region.Framework.Scenes } deleteIDs.Add(localID); } - ForEachClient(delegate(IClientAPI client) { client.SendKillObject(m_regionHandle, deleteIDs); }); + + ForEachClient(delegate(IClientAPI client) + { + client.SendKillObject(m_regionHandle, deleteIDs); + }); } #endregion diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 0e29b609e5..eb3597d975 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs @@ -774,7 +774,10 @@ namespace OpenSim.Region.Framework.Scenes m_localId = m_scene.AllocateLocalId(); UserAccount account = m_scene.UserAccountService.GetUserAccount(m_scene.RegionInfo.ScopeID, m_uuid); - m_userFlags = account.UserFlags; + if (account != null) + m_userFlags = account.UserFlags; + else + m_userFlags = 0; if (account != null) UserLevel = account.UserLevel; diff --git a/OpenSim/Services/AssetService/AssetService.cs b/OpenSim/Services/AssetService/AssetService.cs index 0feb59d184..ec424c0d24 100644 --- a/OpenSim/Services/AssetService/AssetService.cs +++ b/OpenSim/Services/AssetService/AssetService.cs @@ -117,7 +117,15 @@ namespace OpenSim.Services.AssetService return null; } - return m_Database.GetAsset(assetID); + try + { + return m_Database.GetAsset(assetID); + } + catch (Exception e) + { + m_log.ErrorFormat("[ASSET SERVICE]: Exception getting asset {0} {1}", assetID, e); + return null; + } } public virtual AssetBase GetCached(string id)