diff --git a/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/PhysEngineToSceneConnectorModule.cs b/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/PhysEngineToSceneConnectorModule.cs
index 8a8a92c7d9..caa6277035 100644
--- a/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/PhysEngineToSceneConnectorModule.cs
+++ b/OpenSim/Region/CoreModules/RegionSync/RegionSyncModule/PhysEngineToSceneConnectorModule.cs
@@ -233,7 +233,8 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
///
public static void RouteUpdate(PhysicsActor pa)
{
- SceneObjectPart sop = null;
+ SceneObjectPart sop;
+ ScenePresence sp;
Scene s = null;
foreach (Scene ss in m_allScenes)
{
@@ -250,13 +251,18 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
s = ss;
break;
}
+ try
{
- ScenePresence sp = ss.GetScenePresence(pa.LocalID);
- if (sp != null)
- {
- s = ss;
- break;
- }
+ sp = ss.GetScenePresence(pa.LocalID);
+ }
+ catch
+ {
+ sp = null;
+ }
+ if (sp != null)
+ {
+ s = ss;
+ break;
}
}
if (s != null)
@@ -447,7 +453,6 @@ namespace OpenSim.Region.CoreModules.RegionSync.RegionSyncModule
m_log.Warn(LogHeader + " Not currently synchronized");
return;
}
- m_log.Warn(LogHeader + " Synchronized");
foreach (KeyValuePair pair in m_PEToSceneConnectors)
{
PhysEngineToSceneConnector sceneConnector = pair.Value;