aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services/Connectors
diff options
context:
space:
mode:
authorMelanie2012-02-23 01:40:30 +0000
committerMelanie2012-02-23 01:40:30 +0000
commit1dfc9902649bfb4f02340644a0589fe139a3322a (patch)
tree631a932e9317c50d96c7dbaa91ffc675421a9b48 /OpenSim/Services/Connectors
parentRestore the taskItem null check that I accidentally blatted in 5397a6d (diff)
downloadopensim-SC-1dfc9902649bfb4f02340644a0589fe139a3322a.zip
opensim-SC-1dfc9902649bfb4f02340644a0589fe139a3322a.tar.gz
opensim-SC-1dfc9902649bfb4f02340644a0589fe139a3322a.tar.bz2
opensim-SC-1dfc9902649bfb4f02340644a0589fe139a3322a.tar.xz
Add a position parameter to region crossing of objects. This avoids the
potential bad update that places an object at the opposite side of the origin sim for a moment before actually crossing it. Especially important in grids like OSG where lag between sims is high.
Diffstat (limited to 'OpenSim/Services/Connectors')
-rw-r--r--OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs3
1 files changed, 2 insertions, 1 deletions
diff --git a/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs b/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs
index 65f01b3..cb003d1 100644
--- a/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs
+++ b/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs
@@ -408,7 +408,7 @@ namespace OpenSim.Services.Connectors.Simulation
408 /// <summary> 408 /// <summary>
409 /// 409 ///
410 /// </summary> 410 /// </summary>
411 public bool CreateObject(GridRegion destination, ISceneObject sog, bool isLocalCall) 411 public bool CreateObject(GridRegion destination, Vector3 newPosition, ISceneObject sog, bool isLocalCall)
412 { 412 {
413 // m_log.DebugFormat("[REMOTE SIMULATION CONNECTOR]: CreateObject start"); 413 // m_log.DebugFormat("[REMOTE SIMULATION CONNECTOR]: CreateObject start");
414 414
@@ -421,6 +421,7 @@ namespace OpenSim.Services.Connectors.Simulation
421 args["sog"] = OSD.FromString(sog.ToXml2()); 421 args["sog"] = OSD.FromString(sog.ToXml2());
422 args["extra"] = OSD.FromString(sog.ExtraToXmlString()); 422 args["extra"] = OSD.FromString(sog.ExtraToXmlString());
423 args["modified"] = OSD.FromBoolean(sog.HasGroupChanged); 423 args["modified"] = OSD.FromBoolean(sog.HasGroupChanged);
424 args["new_position"] = newPosition.ToString();
424 425
425 string state = sog.GetStateSnapshot(); 426 string state = sog.GetStateSnapshot();
426 if (state.Length > 0) 427 if (state.Length > 0)