aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs9
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs4
2 files changed, 9 insertions, 4 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index be6ac0a..96f650e 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -4479,6 +4479,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
4479 } 4479 }
4480 } 4480 }
4481 } 4481 }
4482
4482 if (pushAllowed) 4483 if (pushAllowed)
4483 { 4484 {
4484 float distance = (PusheePos - m_host.AbsolutePosition).Length(); 4485 float distance = (PusheePos - m_host.AbsolutePosition).Length();
@@ -4507,17 +4508,21 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
4507 applied_linear_impulse *= scaling_factor; 4508 applied_linear_impulse *= scaling_factor;
4508 4509
4509 } 4510 }
4511
4510 if (pusheeIsAvatar) 4512 if (pusheeIsAvatar)
4511 { 4513 {
4512 if (pusheeav != null) 4514 if (pusheeav != null)
4513 { 4515 {
4514 if (pusheeav.PhysicsActor != null) 4516 PhysicsActor pa = pusheeav.PhysicsActor;
4517
4518 if (pa != null)
4515 { 4519 {
4516 if (local != 0) 4520 if (local != 0)
4517 { 4521 {
4518 applied_linear_impulse *= m_host.GetWorldRotation(); 4522 applied_linear_impulse *= m_host.GetWorldRotation();
4519 } 4523 }
4520 pusheeav.PhysicsActor.AddForce(applied_linear_impulse, true); 4524
4525 pa.AddForce(applied_linear_impulse, true);
4521 } 4526 }
4522 } 4527 }
4523 } 4528 }
diff --git a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
index 669cc37..bf19a42 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
@@ -595,7 +595,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
595 if (!m_coopTermination) 595 if (!m_coopTermination)
596 { 596 {
597 // If we're not co-operative terminating then try and wait for the event to complete before stopping 597 // If we're not co-operative terminating then try and wait for the event to complete before stopping
598 if (workItem.Wait(new TimeSpan((long)timeout * 100000))) 598 if (workItem.Wait(timeout))
599 return true; 599 return true;
600 } 600 }
601 else 601 else
@@ -610,7 +610,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
610 610
611 // For now, we will wait forever since the event should always cleanly terminate once LSL loop 611 // For now, we will wait forever since the event should always cleanly terminate once LSL loop
612 // checking is implemented. May want to allow a shorter timeout option later. 612 // checking is implemented. May want to allow a shorter timeout option later.
613 if (workItem.Wait(TimeSpan.MaxValue)) 613 if (workItem.Wait(Timeout.Infinite))
614 { 614 {
615 if (DebugLevel >= 1) 615 if (DebugLevel >= 1)
616 m_log.DebugFormat( 616 m_log.DebugFormat(