aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorMW2007-08-24 12:34:00 +0000
committerMW2007-08-24 12:34:00 +0000
commitd79b0ba269bfb98de6296b7c0219f6eb2e575710 (patch)
tree3d49466b495037fcc461ac863719db22986231da /OpenSim
parentattempted fix for .NET issue with the database (diff)
downloadopensim-SC_OLD-d79b0ba269bfb98de6296b7c0219f6eb2e575710.zip
opensim-SC_OLD-d79b0ba269bfb98de6296b7c0219f6eb2e575710.tar.gz
opensim-SC_OLD-d79b0ba269bfb98de6296b7c0219f6eb2e575710.tar.bz2
opensim-SC_OLD-d79b0ba269bfb98de6296b7c0219f6eb2e575710.tar.xz
Hopefully fixed mantis bug #318 (exception when a prim moves across a border, for now have stopped prims moving beyond a regions area, will add sending prims from one region to another soon).
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Environment/LandManagement/LandManager.cs6
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs21
2 files changed, 24 insertions, 3 deletions
diff --git a/OpenSim/Region/Environment/LandManagement/LandManager.cs b/OpenSim/Region/Environment/LandManagement/LandManager.cs
index 1ed0642..2f345f4 100644
--- a/OpenSim/Region/Environment/LandManagement/LandManager.cs
+++ b/OpenSim/Region/Environment/LandManagement/LandManager.cs
@@ -207,7 +207,8 @@ namespace OpenSim.Region.Environment.LandManagement
207 207
208 if (x > 63 || y > 63 || x < 0 || y < 0) 208 if (x > 63 || y > 63 || x < 0 || y < 0)
209 { 209 {
210 throw new Exception("Error: Parcel not found at point " + x + ", " + y); 210 return null;
211 //throw new Exception("Error: Parcel not found at point " + x + ", " + y);
211 } 212 }
212 else 213 else
213 { 214 {
@@ -220,7 +221,8 @@ namespace OpenSim.Region.Environment.LandManagement
220 { 221 {
221 if (x > 256 || y > 256 || x < 0 || y < 0) 222 if (x > 256 || y > 256 || x < 0 || y < 0)
222 { 223 {
223 throw new Exception("Error: Parcel not found at point " + x + ", " + y); 224 return null;
225 //throw new Exception("Error: Parcel not found at point " + x + ", " + y);
224 } 226 }
225 else 227 else
226 { 228 {
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
index ba6f6ea..cbf92a8 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
@@ -83,11 +83,30 @@ namespace OpenSim.Region.Environment.Scenes
83 get { return m_rootPart.GroupPosition; } 83 get { return m_rootPart.GroupPosition; }
84 set 84 set
85 { 85 {
86 LLVector3 val = value;
87 if (val.X > 255.6f)
88 {
89 val.X = 255.6f;
90 }
91 else if (val.X < 0.4f)
92 {
93 val.X = 0.4f;
94 }
95
96 if (val.Y > 255.6f)
97 {
98 val.Y = 255.6f;
99 }
100 else if (val.Y < 0.4f)
101 {
102 val.Y = 0.4f;
103 }
104
86 lock (this.m_parts) 105 lock (this.m_parts)
87 { 106 {
88 foreach (SceneObjectPart part in this.m_parts.Values) 107 foreach (SceneObjectPart part in this.m_parts.Values)
89 { 108 {
90 part.GroupPosition = value; 109 part.GroupPosition = val;
91 } 110 }
92 } 111 }
93 if (m_rootPart.PhysActor != null) 112 if (m_rootPart.PhysActor != null)