aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Physics')
-rw-r--r--OpenSim/Region/Physics/ChOdePlugin/ODERayCastRequestManager.cs13
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODERayCastRequestManager.cs11
2 files changed, 20 insertions, 4 deletions
diff --git a/OpenSim/Region/Physics/ChOdePlugin/ODERayCastRequestManager.cs b/OpenSim/Region/Physics/ChOdePlugin/ODERayCastRequestManager.cs
index 7314107..712029e 100644
--- a/OpenSim/Region/Physics/ChOdePlugin/ODERayCastRequestManager.cs
+++ b/OpenSim/Region/Physics/ChOdePlugin/ODERayCastRequestManager.cs
@@ -109,8 +109,17 @@ namespace OpenSim.Region.Physics.OdePlugin
109 ODERayCastRequest[] reqs = m_PendingRequests.ToArray(); 109 ODERayCastRequest[] reqs = m_PendingRequests.ToArray();
110 for (int i = 0; i < reqs.Length; i++) 110 for (int i = 0; i < reqs.Length; i++)
111 { 111 {
112 if (reqs[i].callbackMethod != null) // quick optimization here, don't raycast 112 try
113 RayCast(reqs[i]); // if there isn't anyone to send results 113 {
114 if (reqs[i].callbackMethod != null) // quick optimization here, don't raycast
115 RayCast(reqs[i]); // if there isn't anyone to send results
116 }
117 catch
118 {
119 //Fail silently
120 //This can genuinely happen because raycast requests are queued, and the actor may have
121 //been removed from the scene since it was queued
122 }
114 } 123 }
115 /* 124 /*
116 foreach (ODERayCastRequest req in m_PendingRequests) 125 foreach (ODERayCastRequest req in m_PendingRequests)
diff --git a/OpenSim/Region/Physics/OdePlugin/ODERayCastRequestManager.cs b/OpenSim/Region/Physics/OdePlugin/ODERayCastRequestManager.cs
index ba77dae..15ccddc 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODERayCastRequestManager.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODERayCastRequestManager.cs
@@ -109,8 +109,15 @@ namespace OpenSim.Region.Physics.OdePlugin
109 ODERayCastRequest[] reqs = m_PendingRequests.ToArray(); 109 ODERayCastRequest[] reqs = m_PendingRequests.ToArray();
110 for (int i = 0; i < reqs.Length; i++) 110 for (int i = 0; i < reqs.Length; i++)
111 { 111 {
112 if (reqs[i].callbackMethod != null) // quick optimization here, don't raycast 112 try
113 RayCast(reqs[i]); // if there isn't anyone to send results 113 {
114 if (reqs[i].callbackMethod != null) // quick optimization here, don't raycast
115 RayCast(reqs[i]); // if there isn't anyone to send results
116 }
117 catch
118 {
119 //Fail silently
120 }
114 } 121 }
115 /* 122 /*
116 foreach (ODERayCastRequest req in m_PendingRequests) 123 foreach (ODERayCastRequest req in m_PendingRequests)