aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs2
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs15
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneGraph.cs12
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs3
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPart.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs1
-rw-r--r--OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETCharacter.cs22
-rw-r--r--OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETPrim.cs1
-rw-r--r--OpenSim/Region/Physics/Manager/PhysicsActor.cs1
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODECharacter.cs1
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODEPrim.cs2
-rw-r--r--OpenSim/Region/Physics/POSPlugin/POSPrim.cs1
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs28
-rw-r--r--OpenSim/Services/Connectors/Grid/HypergridServiceConnector.cs3
14 files changed, 74 insertions, 20 deletions
diff --git a/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs b/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs
index 29a9e14..acae4b1 100644
--- a/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs
+++ b/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs
@@ -142,6 +142,7 @@ namespace OpenSim.Framework.Communications.Cache
142 142
143 if (userProfile != null) 143 if (userProfile != null)
144 { 144 {
145
145 if ((userProfile.UserAssetURI == null || userProfile.UserAssetURI == "") && m_commsManager.NetworkServersInfo != null) 146 if ((userProfile.UserAssetURI == null || userProfile.UserAssetURI == "") && m_commsManager.NetworkServersInfo != null)
146 userProfile.UserAssetURI = m_commsManager.NetworkServersInfo.AssetURL; 147 userProfile.UserAssetURI = m_commsManager.NetworkServersInfo.AssetURL;
147 if ((userProfile.UserInventoryURI == null || userProfile.UserInventoryURI == "") && m_commsManager.NetworkServersInfo != null) 148 if ((userProfile.UserInventoryURI == null || userProfile.UserInventoryURI == "") && m_commsManager.NetworkServersInfo != null)
@@ -177,6 +178,7 @@ namespace OpenSim.Framework.Communications.Cache
177 UserProfileData userProfile = m_commsManager.UserService.GetUserProfile(userID); 178 UserProfileData userProfile = m_commsManager.UserService.GetUserProfile(userID);
178 if (userProfile != null) 179 if (userProfile != null)
179 { 180 {
181
180 if ((userProfile.UserAssetURI == null || userProfile.UserAssetURI == "") && m_commsManager.NetworkServersInfo != null) 182 if ((userProfile.UserAssetURI == null || userProfile.UserAssetURI == "") && m_commsManager.NetworkServersInfo != null)
181 userProfile.UserAssetURI = m_commsManager.NetworkServersInfo.AssetURL; 183 userProfile.UserAssetURI = m_commsManager.NetworkServersInfo.AssetURL;
182 if ((userProfile.UserInventoryURI == null || userProfile.UserInventoryURI == "") && m_commsManager.NetworkServersInfo != null) 184 if ((userProfile.UserInventoryURI == null || userProfile.UserInventoryURI == "") && m_commsManager.NetworkServersInfo != null)
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
index f073f32..1fdf1ef 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/HGInventoryBroker.cs
@@ -56,6 +56,17 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
56 private ISessionAuthInventoryService m_HGService; 56 private ISessionAuthInventoryService m_HGService;
57 57
58 private string m_LocalGridInventoryURI = string.Empty; 58 private string m_LocalGridInventoryURI = string.Empty;
59
60 private string LocalGridInventory
61 {
62 get
63 {
64 if (m_LocalGridInventoryURI == null || m_LocalGridInventoryURI == "")
65 m_LocalGridInventoryURI = m_Scene.CommsManager.NetworkServersInfo.InventoryURL;
66 return m_LocalGridInventoryURI;
67 }
68 }
69
59 public Type ReplaceableInterface 70 public Type ReplaceableInterface
60 { 71 {
61 get { return null; } 72 get { return null; }
@@ -533,7 +544,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
533 544
534 string userInventoryServerURI = Util.ServerURI(uinfo.UserProfile.UserInventoryURI); 545 string userInventoryServerURI = Util.ServerURI(uinfo.UserProfile.UserInventoryURI);
535 546
536 string uri = m_LocalGridInventoryURI.TrimEnd('/'); 547 string uri = LocalGridInventory.TrimEnd('/');
537 548
538 if ((userInventoryServerURI == uri) || (userInventoryServerURI == "")) 549 if ((userInventoryServerURI == uri) || (userInventoryServerURI == ""))
539 { 550 {
@@ -545,7 +556,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
545 556
546 private string GetUserInventoryURI(UUID userID) 557 private string GetUserInventoryURI(UUID userID)
547 { 558 {
548 string invURI = m_LocalGridInventoryURI; 559 string invURI = LocalGridInventory;
549 560
550 CachedUserInfo uinfo = m_UserProfileService.GetUserDetails(userID); 561 CachedUserInfo uinfo = m_UserProfileService.GetUserDetails(userID);
551 if ((uinfo == null) || (uinfo.UserProfile == null)) 562 if ((uinfo == null) || (uinfo.UserProfile == null))
diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
index f74fd5d..b0fb8b3 100644
--- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
@@ -542,6 +542,18 @@ namespace OpenSim.Region.Framework.Scenes
542 if (group.GetFromItemID() == itemID) 542 if (group.GetFromItemID() == itemID)
543 { 543 {
544 m_parentScene.SendAttachEvent(group.LocalId, itemID, UUID.Zero); 544 m_parentScene.SendAttachEvent(group.LocalId, itemID, UUID.Zero);
545 bool hasScripts = false;
546 foreach (SceneObjectPart part in group.Children.Values)
547 {
548 if (part.Inventory.ContainsScripts())
549 {
550 hasScripts = true;
551 break;
552 }
553 }
554
555 if (hasScripts) // Allow the object to execute the attach(NULL_KEY) event
556 System.Threading.Thread.Sleep(100);
545 group.DetachToInventoryPrep(); 557 group.DetachToInventoryPrep();
546 m_log.Debug("[DETACH]: Saving attachpoint: " + 558 m_log.Debug("[DETACH]: Saving attachpoint: " +
547 ((uint)group.GetAttachmentPoint()).ToString()); 559 ((uint)group.GetAttachmentPoint()).ToString());
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index eacd219..f8498c6 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -1853,7 +1853,7 @@ namespace OpenSim.Region.Framework.Scenes
1853 } 1853 }
1854 } 1854 }
1855 } 1855 }
1856 1856
1857 public void rotLookAt(Quaternion target, float strength, float damping) 1857 public void rotLookAt(Quaternion target, float strength, float damping)
1858 { 1858 {
1859 SceneObjectPart rootpart = m_rootPart; 1859 SceneObjectPart rootpart = m_rootPart;
@@ -1880,6 +1880,7 @@ namespace OpenSim.Region.Framework.Scenes
1880 } 1880 }
1881 } 1881 }
1882 } 1882 }
1883
1883 public void stopLookAt() 1884 public void stopLookAt()
1884 { 1885 {
1885 SceneObjectPart rootpart = m_rootPart; 1886 SceneObjectPart rootpart = m_rootPart;
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index 0eddbfd..6b562e5 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -2684,7 +2684,7 @@ namespace OpenSim.Region.Framework.Scenes
2684 ParentGroup.HasGroupChanged = true; 2684 ParentGroup.HasGroupChanged = true;
2685 ScheduleFullUpdate(); 2685 ScheduleFullUpdate();
2686 } 2686 }
2687 2687
2688 /// <summary> 2688 /// <summary>
2689 /// Set the text displayed for this part. 2689 /// Set the text displayed for this part.
2690 /// </summary> 2690 /// </summary>
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
index 0321c41..cdd23bd 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
@@ -345,6 +345,7 @@ namespace OpenSim.Region.Framework.Scenes
345 break; 345 break;
346 } 346 }
347 } 347 }
348 m_part.ParentGroup.m_savedScriptState.Remove(oldID);
348 } 349 }
349 } 350 }
350 351
diff --git a/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETCharacter.cs b/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETCharacter.cs
index 98681d6..88f5d3e 100644
--- a/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETCharacter.cs
+++ b/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETCharacter.cs
@@ -620,11 +620,25 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
620 set { return; } 620 set { return; }
621 } 621 }
622 622
623 public override Quaternion APIDTarget { set { return; } } 623 public override Quaternion APIDTarget
624 public override bool APIDActive { set { return; } } 624 {
625 public override float APIDStrength { set { return; } } 625 set { return; }
626 public override float APIDDamping { set { return; } } 626 }
627
628 public override bool APIDActive
629 {
630 set { return; }
631 }
627 632
633 public override float APIDStrength
634 {
635 set { return; }
636 }
637
638 public override float APIDDamping
639 {
640 set { return; }
641 }
628 642
629 /// <summary> 643 /// <summary>
630 /// Adds the force supplied to the Target Velocity 644 /// Adds the force supplied to the Target Velocity
diff --git a/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETPrim.cs b/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETPrim.cs
index d931f126..9603ea4 100644
--- a/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETPrim.cs
+++ b/OpenSim/Region/Physics/BulletDotNETPlugin/BulletDotNETPrim.cs
@@ -570,7 +570,6 @@ namespace OpenSim.Region.Physics.BulletDotNETPlugin
570 public override float APIDStrength { set { return; } } 570 public override float APIDStrength { set { return; } }
571 public override float APIDDamping { set { return; } } 571 public override float APIDDamping { set { return; } }
572 572
573
574 public override void AddForce(Vector3 force, bool pushforce) 573 public override void AddForce(Vector3 force, bool pushforce)
575 { 574 {
576 m_forcelist.Add(force); 575 m_forcelist.Add(force);
diff --git a/OpenSim/Region/Physics/Manager/PhysicsActor.cs b/OpenSim/Region/Physics/Manager/PhysicsActor.cs
index b82586f..10b153d 100644
--- a/OpenSim/Region/Physics/Manager/PhysicsActor.cs
+++ b/OpenSim/Region/Physics/Manager/PhysicsActor.cs
@@ -487,7 +487,6 @@ namespace OpenSim.Region.Physics.Manager
487 public override float APIDStrength { set { return; } } 487 public override float APIDStrength { set { return; } }
488 public override float APIDDamping { set { return; } } 488 public override float APIDDamping { set { return; } }
489 489
490
491 public override void SetMomentum(Vector3 momentum) 490 public override void SetMomentum(Vector3 momentum)
492 { 491 {
493 } 492 }
diff --git a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
index 06ed8fb..a38fccc 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
@@ -1205,7 +1205,6 @@ namespace OpenSim.Region.Physics.OdePlugin
1205 1205
1206 public override float APIDDamping{ set { return; } } 1206 public override float APIDDamping{ set { return; } }
1207 1207
1208
1209 public override void SubscribeEvents(int ms) 1208 public override void SubscribeEvents(int ms)
1210 { 1209 {
1211 m_requestedUpdateFrequency = ms; 1210 m_requestedUpdateFrequency = ms;
diff --git a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
index 3eb3b28..dd7902a 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
@@ -2822,7 +2822,7 @@ Console.WriteLine(" JointCreateFixed");
2822 } 2822 }
2823 public override bool PIDActive { set { m_usePID = value; } } 2823 public override bool PIDActive { set { m_usePID = value; } }
2824 public override float PIDTau { set { m_PIDTau = value; } } 2824 public override float PIDTau { set { m_PIDTau = value; } }
2825 2825
2826 public override float PIDHoverHeight { set { m_PIDHoverHeight = value; ; } } 2826 public override float PIDHoverHeight { set { m_PIDHoverHeight = value; ; } }
2827 public override bool PIDHoverActive { set { m_useHoverPID = value; } } 2827 public override bool PIDHoverActive { set { m_useHoverPID = value; } }
2828 public override PIDHoverType PIDHoverType { set { m_PIDHoverType = value; } } 2828 public override PIDHoverType PIDHoverType { set { m_PIDHoverType = value; } }
diff --git a/OpenSim/Region/Physics/POSPlugin/POSPrim.cs b/OpenSim/Region/Physics/POSPlugin/POSPrim.cs
index 847b634..edccf47 100644
--- a/OpenSim/Region/Physics/POSPlugin/POSPrim.cs
+++ b/OpenSim/Region/Physics/POSPlugin/POSPrim.cs
@@ -299,6 +299,7 @@ namespace OpenSim.Region.Physics.POSPlugin
299 { 299 {
300 set { return; } 300 set { return; }
301 } 301 }
302
302 public override Quaternion APIDTarget 303 public override Quaternion APIDTarget
303 { 304 {
304 set { return; } 305 set { return; }
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 2da498a..28932b6 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -2742,7 +2742,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
2742 2742
2743 } 2743 }
2744 2744
2745
2746 public void llStopLookAt() 2745 public void llStopLookAt()
2747 { 2746 {
2748 m_host.AddScriptLPS(1); 2747 m_host.AddScriptLPS(1);
@@ -5866,7 +5865,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
5866 m_host.AddScriptLPS(1); 5865 m_host.AddScriptLPS(1);
5867 return World.SimulatorFPS; 5866 return World.SimulatorFPS;
5868 } 5867 }
5869 5868
5870 5869
5871 /* particle system rules should be coming into this routine as doubles, that is 5870 /* particle system rules should be coming into this routine as doubles, that is
5872 rule[0] should be an integer from this list and rule[1] should be the arg 5871 rule[0] should be an integer from this list and rule[1] should be the arg
@@ -7467,9 +7466,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7467 break; 7466 break;
7468 7467
7469 case (int)ScriptBaseClass.PRIM_POSITION: 7468 case (int)ScriptBaseClass.PRIM_POSITION:
7470 res.Add(new LSL_Vector(part.AbsolutePosition.X, 7469 LSL_Vector v = new LSL_Vector(part.AbsolutePosition.X,
7471 part.AbsolutePosition.Y, 7470 part.AbsolutePosition.Y,
7472 part.AbsolutePosition.Z)); 7471 part.AbsolutePosition.Z);
7472 // For some reason, the part.AbsolutePosition.* values do not change if the
7473 // linkset is rotated; they always reflect the child prim's world position
7474 // as though the linkset is unrotated. This is incompatible behavior with SL's
7475 // implementation, so will break scripts imported from there (not to mention it
7476 // makes it more difficult to determine a child prim's actual inworld position).
7477 if (part.ParentID != 0)
7478 v = ((v - llGetRootPosition()) * llGetRootRotation()) + llGetRootPosition();
7479 res.Add( v );
7473 break; 7480 break;
7474 7481
7475 case (int)ScriptBaseClass.PRIM_SIZE: 7482 case (int)ScriptBaseClass.PRIM_SIZE:
@@ -7487,6 +7494,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7487 PrimitiveBaseShape Shape = part.Shape; 7494 PrimitiveBaseShape Shape = part.Shape;
7488 int primType = getScriptPrimType(part.Shape); 7495 int primType = getScriptPrimType(part.Shape);
7489 res.Add(new LSL_Integer(primType)); 7496 res.Add(new LSL_Integer(primType));
7497 double topshearx = (double)(sbyte)Shape.PathShearX / 100.0; // Fix negative values for PathShearX
7498 double topsheary = (double)(sbyte)Shape.PathShearY / 100.0; // and PathShearY.
7490 switch (primType) 7499 switch (primType)
7491 { 7500 {
7492 case ScriptBaseClass.PRIM_TYPE_BOX: 7501 case ScriptBaseClass.PRIM_TYPE_BOX:
@@ -7497,7 +7506,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7497 res.Add(new LSL_Float(Shape.ProfileHollow / 50000.0)); 7506 res.Add(new LSL_Float(Shape.ProfileHollow / 50000.0));
7498 res.Add(new LSL_Vector(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0)); 7507 res.Add(new LSL_Vector(Shape.PathTwistBegin / 100.0, Shape.PathTwist / 100.0, 0));
7499 res.Add(new LSL_Vector(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0)); 7508 res.Add(new LSL_Vector(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0));
7500 res.Add(new LSL_Vector(Shape.PathShearX / 100.0, Shape.PathShearY / 100.0, 0)); 7509 res.Add(new LSL_Vector(topshearx, topsheary, 0));
7501 break; 7510 break;
7502 7511
7503 case ScriptBaseClass.PRIM_TYPE_SPHERE: 7512 case ScriptBaseClass.PRIM_TYPE_SPHERE:
@@ -7532,7 +7541,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7532 res.Add(new LSL_Vector(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0)); 7541 res.Add(new LSL_Vector(1 - (Shape.PathScaleX / 100.0 - 1), 1 - (Shape.PathScaleY / 100.0 - 1), 0));
7533 7542
7534 // vector topshear 7543 // vector topshear
7535 res.Add(new LSL_Vector(Shape.PathShearX / 100.0, Shape.PathShearY / 100.0, 0)); 7544 res.Add(new LSL_Vector(topshearx, topsheary, 0));
7536 7545
7537 // vector profilecut 7546 // vector profilecut
7538 res.Add(new LSL_Vector(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0)); 7547 res.Add(new LSL_Vector(Shape.ProfileBegin / 50000.0, 1 - Shape.ProfileEnd / 50000.0, 0));
@@ -7541,8 +7550,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7541 res.Add(new LSL_Vector(Shape.PathTaperX / 100.0, Shape.PathTaperY / 100.0, 0)); 7550 res.Add(new LSL_Vector(Shape.PathTaperX / 100.0, Shape.PathTaperY / 100.0, 0));
7542 7551
7543 // float revolutions 7552 // float revolutions
7544 res.Add(new LSL_Float(Shape.PathRevolutions / 50.0)); // needs fixing :( 7553 res.Add(new LSL_Float((Shape.PathRevolutions * 0.015) + 1.0)); // Slightly inaccurate, because an unsigned
7545 7554 // byte is being used to represent the entire
7555 // range of floating-point values from 1.0
7556 // through 4.0 (which is how SL does it).
7557
7546 // float radiusoffset 7558 // float radiusoffset
7547 res.Add(new LSL_Float(Shape.PathRadiusOffset / 100.0)); 7559 res.Add(new LSL_Float(Shape.PathRadiusOffset / 100.0));
7548 7560
diff --git a/OpenSim/Services/Connectors/Grid/HypergridServiceConnector.cs b/OpenSim/Services/Connectors/Grid/HypergridServiceConnector.cs
index 968a6d6..7098b07 100644
--- a/OpenSim/Services/Connectors/Grid/HypergridServiceConnector.cs
+++ b/OpenSim/Services/Connectors/Grid/HypergridServiceConnector.cs
@@ -151,6 +151,9 @@ namespace OpenSim.Services.Connectors.Grid
151 151
152 m_AssetService.Store(ass); 152 m_AssetService.Store(ass);
153 153
154 // finally
155 info.TerrainImage = ass.FullID;
156
154 } 157 }
155 catch // LEGIT: Catching problems caused by OpenJPEG p/invoke 158 catch // LEGIT: Catching problems caused by OpenJPEG p/invoke
156 { 159 {