aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/Scene.cs
diff options
context:
space:
mode:
authorTeravus Ovares2008-03-30 08:01:47 +0000
committerTeravus Ovares2008-03-30 08:01:47 +0000
commitfd2caf5f1673ad14702d89db9804f841c5cb861a (patch)
tree18fd4ae03180b14df41f93544afa0cc9d5ec5309 /OpenSim/Region/Environment/Scenes/Scene.cs
parent* Stop the grid inventory service sending all folder and item details twice (diff)
downloadopensim-SC-fd2caf5f1673ad14702d89db9804f841c5cb861a.zip
opensim-SC-fd2caf5f1673ad14702d89db9804f841c5cb861a.tar.gz
opensim-SC-fd2caf5f1673ad14702d89db9804f841c5cb861a.tar.bz2
opensim-SC-fd2caf5f1673ad14702d89db9804f841c5cb861a.tar.xz
This update has good news and bad news, first the bad.
* This update breaks inter-region communications, sorry. * You will need to run prebuild. Next, the good; * This update solves the unexpected binary element when Linux simulators inform windows simulators and vice versa. So Linux Simulators and Windows simulators are 100% compatible again. * This update introduces an Integer in the prim crossing method to tell the receiving simulator which XML method to use to load the prim that crossed the border. If the receiving prim doesn't support the method, the prim crossing fails and no prims are lost. That being said, it's best to update all your simulators to this revision at once.
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/Scene.cs')
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs17
1 files changed, 14 insertions, 3 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index c07f718..819815b 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -1242,6 +1242,9 @@ namespace OpenSim.Region.Environment.Scenes
1242 m_log.Warn("Prim crossing: " + grp.UUID.ToString()); 1242 m_log.Warn("Prim crossing: " + grp.UUID.ToString());
1243 int thisx = (int)RegionInfo.RegionLocX; 1243 int thisx = (int)RegionInfo.RegionLocX;
1244 int thisy = (int)RegionInfo.RegionLocY; 1244 int thisy = (int)RegionInfo.RegionLocY;
1245
1246 int primcrossingXMLmethod = 0;
1247
1245 ulong newRegionHandle = 0; 1248 ulong newRegionHandle = 0;
1246 LLVector3 pos = position; 1249 LLVector3 pos = position;
1247 1250
@@ -1279,7 +1282,7 @@ namespace OpenSim.Region.Environment.Scenes
1279 if (newRegionHandle != 0) 1282 if (newRegionHandle != 0)
1280 { 1283 {
1281 bool successYN = false; 1284 bool successYN = false;
1282 successYN = m_sceneGridService.PrimCrossToNeighboringRegion(newRegionHandle, grp.UUID, m_sceneXmlLoader.SavePrimGroupToXML2String(grp)); 1285 successYN = m_sceneGridService.PrimCrossToNeighboringRegion(newRegionHandle, grp.UUID, m_sceneXmlLoader.SavePrimGroupToXML2String(grp), primcrossingXMLmethod);
1283 if (successYN) 1286 if (successYN)
1284 { 1287 {
1285 // We remove the object here 1288 // We remove the object here
@@ -1306,10 +1309,18 @@ namespace OpenSim.Region.Environment.Scenes
1306 } 1309 }
1307 } 1310 }
1308 1311
1309 public void IncomingInterRegionPrimGroup(ulong regionHandle, LLUUID primID, string objXMLData) 1312 public bool IncomingInterRegionPrimGroup(ulong regionHandle, LLUUID primID, string objXMLData, int XMLMethod)
1310 { 1313 {
1311 m_log.Warn("{[INTERREGION]: A new prim arrived from a neighbor"); 1314 m_log.Warn("{[INTERREGION]: A new prim arrived from a neighbor");
1312 m_sceneXmlLoader.LoadGroupFromXml2String(objXMLData); 1315 if (XMLMethod == 0)
1316 {
1317 m_sceneXmlLoader.LoadGroupFromXml2String(objXMLData);
1318 return true;
1319 }
1320 else
1321 {
1322 return false;
1323 }
1313 1324
1314 } 1325 }
1315 1326