Commit Graph

2300 Commits (55c6753b13d4c8cd69cc986db5f6e321b8e65bb7)

Author SHA1 Message Date
Justin Clark-Casey (justincc) 306af9934a In an object return message, send a null-terminated empty string in binary bucket to prevent a viewer 3 crash.
This is the message sent to the client when the object is returned.
We were sending byte[0] in the binary bucket.  This didn't kill viewer 1 but did terminate viewer 3 (don't know about viewer 2).
So sending "\0" instead.
This is to address http://opensimulator.org/mantis/view.php?id=5683
2011-09-13 17:13:42 +01:00
Justin Clark-Casey (justincc) dea0935361 eliminate redundant SP.m_regionInfo since it always has the scene.
We were already referencing through the scene in some places.
2011-09-12 23:00:15 +01:00
Justin Clark-Casey (justincc) 62b2450529 remove the unused SP.initializeScenePresence() 2011-09-12 22:54:54 +01:00
Justin Clark-Casey (justincc) 56cd7d9685 stop the redundant passing in of RegionInfo to SceneGraph, since the Scene is always passed in at the same time. 2011-09-12 22:51:56 +01:00
Justin Clark-Casey (justincc) 00f8946bd4 minor: if the script engine fails to find a prim for a script, also print out that prim's local id in the error message. 2011-09-12 22:44:14 +01:00
Justin Clark-Casey (justincc) ea0f78c971 Start locking entire add/remove operations on an IScenePresence.AttachmentsSyncLock object
Attach and detach packets are processed asynchronously when received from a viewer.
Bugs like http://opensimulator.org/mantis/view.php?id=5644 indicate that in some situations (such as attaching/detaching entire folders of objects at once), there are race conditions between these threads.
Since multiple data structures need to be updated on attach/detach, it's not enough to lock the individual collections.
Therefore, this commit introduces a new IScenePresence.AttachmentsSyncLock which add/remove operations lock on.
2011-09-12 21:57:22 +01:00
Justin Clark-Casey (justincc) 517932722b minor: put <remarks> tags around some method doc 2011-09-12 20:06:09 +01:00
Justin Clark-Casey (justincc) 728fd0b1b8 lock attachments when enumerating through them in ScenePresence.CopyTo().
May have some effect on http://opensimulator.org/mantis/view.php?id=5644
2011-09-10 01:09:17 +01:00
Justin Clark-Casey (justincc) 9c32b131fd Add extra log information when attachments fail validation 2011-09-10 00:57:52 +01:00
Oren Hurvitz 1dd904b78e Delay loading scripts until the scene has finished loading 2011-09-09 23:01:05 +01:00
Justin Clark-Casey (justincc) 086bf9f15d Save the default terrain texture UUIDs for a new region instead of leaving them as UUID.Zero.
Leaving them at UUID.Zero meant that when a viewer 2 logged into a region that had been freshly created, it received UUID.Zero for these textures, and hence display the land as plain white.
On a simulator restart, the problem would go away since when the database adapators loaded the new region settings, RegionSettings itself has code to use default textures instead of UUID.Zero.
This commit resolves the problem by saving the default texture UUIDs instead of Zero.
However, we currently have to do this in a roundabout way by resaving once the RegionSettings have been created by the database for the first time.  This needless complexity should be addressed.
This change will also have the effect of replacing any existing UUID.Zero terrain textures with the default ones.
However, this shouldn't have any effect since the UUID.Zeros were already being replaced in memory with those same UUIDs.
2011-09-09 00:38:04 +01:00
Justin Clark-Casey (justincc) e6cd4defdb Lock m_pendingObjects when calling GetPendingObjectsCount().
This is only called by a region console command.
We should also be locking m_partsUpdateQueue when dequeueing the next part, or locking m_pendingObjects in QueuePartForUpdate().
However, I won't do this now since I don't have time to analyze how this would affect liveness.
2011-09-06 22:48:05 +01:00
Justin Clark-Casey (justincc) 3d4d3427cd Comment out SceneViewer.Reset() and stop calling from Close() since this is useless work as a closed scene object is never reset.
Strictly speaking, we could also stop bothering to clear the m_updateTimes and m_partsUpdateQueue if we are sure that the whole SceneViewer is shortly to be garbage collected anyway, but we'll leave them around for now.
2011-09-06 22:44:34 +01:00
Justin Clark-Casey (justincc) 4bf3adffb8 In SceneViewer, introduce an IsEnabled flag and perform Close() under an m_pendingObjects lock in order to avoid the race condition seen by danbanner in http://opensimulator.org/mantis/view.php?id=5669 2011-09-06 22:26:28 +01:00
Justin Clark-Casey (justincc) cf73afec35 Try disabling the inconsistent attachment state check to see if this actually has an impact.
The code in question is over three years old and just be catching an inconsistency rather than being wholly necessary.
This commit still carries out the check and prints all the previous log warnings but a 'failure' no longer prevents avatar region crossing or teleport, and it doesn't give the client the error message.
This will have some kind of impact on http://opensimulator.org/mantis/view.php?id=5672
2011-09-05 23:42:37 +01:00
Justin Clark-Casey (justincc) 5c1fa968ab Stop NPCs losing attachments when the source avatar takes them off.
This was happening because we were using the source avatar's item IDs in the clone appearance.
Switch to using the asset IDs of attachments instead for NPCs.
The InventoryAccessModule and AttachmentModule had to be changed to allow rezzing of an object without an associated inventory item.
Hopefully goes some way towards resolving http://opensimulator.org/mantis/view.php?id=5653
2011-09-03 01:11:16 +01:00
Justin Clark-Casey (justincc) e6eb0d9a6f Comment out Scene.CleanDroppedAttachments() and calls.
This method wasn't actually doing anything since dropped attachments retain a PCode of 9.
Also, behaviour of dropped attachments in other places appears to be that they persist after avatar logout rather than get deleted.
2011-09-02 23:19:27 +01:00
Justin Clark-Casey (justincc) 26b471f25a Go back to resetting the State parameter for all parts of a SOG when SOG.ClearPartAttachmentData() is called.
Even though we don't use these on rez they are still present after an unlink, after which selecting them causes various viewers to crash
Hopefully really does address http://opensimulator.org/mantis/view.php?id=5664
2011-09-02 22:28:27 +01:00
Justin Clark-Casey (justincc) af7c6c5f39 stop passing FromUserInventoryItemID right down into the deserializer.
the code becomes simpler if this is set from the outside - only one place needs to do this.
2011-09-02 00:50:16 +01:00
Justin Clark-Casey (justincc) 9c0a03731d Move more of IAM.RezObject() into DoPreRezWhenFromItem() 2011-09-02 00:41:21 +01:00
Justin Clark-Casey (justincc) c491cdcb95 refactor: use SOG register target waypoints and rots directly instead of calling through the SOP, which doesn't make conceptual sense anyway. 2011-09-01 02:18:31 +01:00
Justin Clark-Casey (justincc) 7eca929686 Eliminate pointless checks of SOG.RootPart != null
It's never possible for SOG to have no RootPart, except in the first few picosends of the big bang when it's pulled from region persistence or deserialized
2011-09-01 02:11:00 +01:00
Justin Clark-Casey (justincc) 10d883dc88 refactor: use ParentGroup.UUID directly instead of SOP.GetRootPartUUID() 2011-09-01 01:41:53 +01:00
Justin Clark-Casey (justincc) 63bf710237 Fix issue with llGetTorque() where it would only ever return a zero vector. 2011-09-01 01:37:35 +01:00
Justin Clark-Casey (justincc) 095b3e5756 Remove pointless cluttering SOP.ParentGroup != null checks.
The only times when ParentGroup might be null is during regression tests (which might not be a valid thing) and when scene objects are being constructed from the database.
At all other times it's not possible for a SOP not to have a SOG parent.
2011-09-01 01:22:28 +01:00
Justin Clark-Casey (justincc) 7d58b5fa15 move common code into AttachmentsModule.DeleteAttachmentsFromScene() 2011-08-31 17:53:58 +01:00
Justin Clark-Casey (justincc) e69f246b86 refactor: move multiple class to set avatar height into associated SP.AddToPhysicalScene() 2011-08-31 17:25:18 +01:00
Justin Clark-Casey (justincc) 899d109e82 get rid of appearance null checks - this is never null 2011-08-31 17:13:53 +01:00
Justin Clark-Casey (justincc) 54839d28ad remove pointless m_attachments == null check since this field is never null 2011-08-31 16:46:43 +01:00
Justin Clark-Casey (justincc) 5a5206449f minor: seal up another instance of using the appearance list without locking 2011-08-31 16:41:58 +01:00
Justin Clark-Casey (justincc) 32444d98cb Make SP.Attachments available as sp.GetAttachments() instead.
The approach here, as in other parts of OpenSim, is to return a copy of the list rather than the attachments list itself
This prevents callers from forgetting to lock the list when they read it, as was happening in various parts of the codebase.
It also improves liveness.
This might improve attachment anomolies when performing region crossings.
2011-08-31 16:29:51 +01:00
Justin Clark-Casey (justincc) 1809aaf74c minor: remove already processed avatar null check in Scene.RemoveClient()
remove some now duplicated method doc
2011-08-30 23:36:45 +01:00
Justin Clark-Casey (justincc) ddc733cd3d refactor: move SP.SaveChangedAttachments() fully into AttachmentsModule 2011-08-30 23:32:30 +01:00
Justin Clark-Casey (justincc) 04bafd2122 refactor: Move ScenePresence.RezAttachments() into AttachmentsModule
This adds an incomplete IScenePresence to match ISceneEntity
2011-08-30 23:06:10 +01:00
Justin Clark-Casey (justincc) a90e1cf3aa add Name property to ISceneEntity 2011-08-30 22:39:16 +01:00
Justin Clark-Casey (justincc) 1de68b34d9 refactor: migrate DropObject handling fully into AttachmentsModule from Scene 2011-08-30 22:25:38 +01:00
Mic Bowman 17dab7245f Merge branch 'master' into bulletsim 2011-08-30 08:44:28 -07:00
Justin Clark-Casey (justincc) be357f8fee Fix bug in persisting saved appearances for npcs
Assets have to be marked non-local as well as non-temporary to persist.  This is now done.
Hopefully addresses http://opensimulator.org/mantis/view.php?id=5660
2011-08-30 01:58:32 +01:00
Mic Bowman 648866b597 Merge branch 'master' into bulletsim 2011-08-29 09:55:34 -07:00
Makopoppo 795b56e695 Related to #4689 - Adding missing null check for SceneObjectPart
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2011-08-27 07:45:02 -04:00
Justin Clark-Casey (justincc) d4d894c20f Stop avatars returning from neighbouring regions from stalling on the border crossing.
On making a root agent, we need to reset the ScenePresence.m_movement_flag so that it doesn't remember the
movement registered to the client when it exited the initial region.
If this is remember, then the client avatar movement isn't updated and it appears to stall in mid-air, though this is resolved with a prod/release of any other direction key.
This bug was probably introduced a few weeks ago.  Surprised that nobody brought it up.
2011-08-27 01:28:33 +01:00
Justin Clark-Casey (justincc) 1615e7d29f Eliminate duplicate AttachmentPoint properties by always using the one stored in the root part's state field. 2011-08-27 00:33:24 +01:00
Justin Clark-Casey (justincc) 33a894f3d2 refactor: move SOP.IsAttachment and AttachmentPoint up into SOG to avoid pointless duplication of identical values 2011-08-27 00:15:21 +01:00
Mic Bowman 23f10f1d22 Merge branch 'master' into bulletsim 2011-08-26 15:23:46 -07:00
Justin Clark-Casey (justincc) 15a514fcbc refactor: simplify SOP.AttachedAvatar into SOG.AttachedAvatar
This does a tiny bit to reduce code complexity, memory requirement and the cpu time of pointlessly setting this field to the same value in every SOP
2011-08-26 23:06:41 +01:00
Justin Clark-Casey (justincc) 5f3ffc195f refactor: move SOG.DetachToGround() to AttachmentsModule.DetachSceneObjectToGround() and remove redundant code 2011-08-26 22:49:11 +01:00
Justin Clark-Casey (justincc) 002313bf13 refactor: move sog.DetachToInventoryPrep() into AttachmentsModule.DetachSingleAttachmentToInv() 2011-08-26 22:02:23 +01:00
Justin Clark-Casey (justincc) d5dc8133fc remove pointless IsDeleted check on SP.RezAttachments()
IsDeleted is never set for an SP, even though it's on EntityBase.
It might be an idea to set it in the future
2011-08-24 22:37:08 +01:00
Justin Clark-Casey (justincc) 6d4432f440 refactor: simplify EntityBase.IsDeleted property 2011-08-24 22:34:26 +01:00
Justin Clark-Casey (justincc) 9ba4511d3e add SOG helper properties IsPhantom, IsTemporary, etc. to improve code readability
use these in some sog methods
2011-08-24 21:53:12 +01:00
Justin Clark-Casey (justincc) 5eeee480d4 refactor: move Scene.Inventory.attachObjectAssetStore() into AttachmentsModule.AddSceneObjectAsAttachment() 2011-08-24 21:35:44 +01:00
Justin Clark-Casey (justincc) 274e354006 get rid of pointless grp null check in attachObjectAssetStore() 2011-08-24 21:23:10 +01:00
Justin Clark-Casey (justincc) 0e0d40c810 minor: remove hardcoded region numbers with the region size constant and a currently hardcoded offset 2011-08-24 21:18:11 +01:00
Justin Clark-Casey (justincc) ccf07f6ae3 refactor: remove pointless AgentId argument from attachObjectAssetStore() 2011-08-24 21:14:57 +01:00
Justin Clark-Casey (justincc) cf3ffe5bb4 Fix llAttachToAvatar()
Apart from one obvious bug, this was failing because attempting to serialize the script from inside the script (as part of saving the attachment as an inventory asset) was triggering an extremely long delay.
So we now don't do this.  The state will be serialized anyway when the avatar normally logs out.
The worst that can happen is that if the client/server crashes, the attachment scripts start without previous state.
2011-08-24 20:49:23 +01:00
Justin Clark-Casey (justincc) afd5469eec Remove pointless contains check in ScenePresence.RemoveAttachment() 2011-08-23 00:08:29 +01:00
Justin Clark-Casey (justincc) d328046efb If an attachment fails, then start logging the exception for now, in order to help with the inconsistent state bug.
This also refactors AttachmentsModules to stop pointlessly refetching the ScenePresence in various methods.  However, more of this is required.
2011-08-22 23:59:48 +01:00
Justin Clark-Casey (justincc) 2eaadf2dc0 Add warning log message to say which attachment fails validation in order to pin down problems with "Inconsistent Attachment State" 2011-08-22 23:28:37 +01:00
Mic Bowman 384cb79a1a Merge branch 'master' into bulletsim
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneManager.cs
2011-08-19 14:49:16 -07:00
Robert Adams bb5b396fc5 Fix exception when using BasicPhysics 2011-08-19 00:53:57 +01:00
Justin Clark-Casey (justincc) c9e6b7bd10 Stop NPC's getting hypergrid like names in some circumstances.
This meant punching in another AddUser() method in IUserManagement to do a direct name to UUID associated without the account check (since NPCs don't have accounts).
May address http://opensimulator.org/mantis/view.php?id=5645
2011-08-19 00:45:22 +01:00
Robert Adams fef73a1a10 BulletSim: add runtime setting of physics parameters. Update default values. 2011-08-18 14:32:09 -07:00
Justin Clark-Casey (justincc) 49258350e8 refactor: fold CreateSceneViewer() back into ScenePresence constructor 2011-08-18 01:22:01 +01:00
Justin Clark-Casey (justincc) 45c37ef494 refactor: Fold 3 ScenePresence() constructors into one since only one is called. 2011-08-18 01:11:23 +01:00
Justin Clark-Casey (justincc) c1a34cd8da Don't try to save changed attachment states when an NPC with attachments is removed from the scene.
This is done by introducing a PresenceType enum into ScenePresence which currently has two values, User and Npc.
This seems better than a SaveAttachments flag in terms of code comprehension, though I'm still slightly uneasy about introducing these semantics to core objects
2011-08-18 00:53:05 +01:00
Justin Clark-Casey (justincc) 696bd44833 Add new regression TestRezAttachmentsOnAvatarEntrance() to do simple attachments check 2011-08-17 00:37:33 +01:00
Justin Clark-Casey (justincc) d73c424078 get rid of logged warnings about lack of some modules - afaik these never occur in real life and just clutter up tests 2011-08-16 23:12:58 +01:00
Justin Clark-Casey (justincc) 66eb537d0c relocate AttachmentTests.cs to AttachmentsModuleTests.cs 2011-08-16 21:56:56 +01:00
Snoopy Pfeffer 9a6ad1535e Added console command "delete object outside" to delete all objects outside region boundaries. This is especiyll useful in cases where physical objects outside regions boundaries cause much physics engine lag. 2011-08-15 17:46:51 +02:00
Justin Clark-Casey (justincc) b3a4b10531 eliminate redundant ground sitting checks since these are already done in enclosing control structures 2011-08-11 03:16:46 +01:00
Justin Clark-Casey (justincc) 1aa1711893 eliminate the rotation parameter from SP.HandleMoveToTargetUpdate(). This can just use the currently set Rotation
looks like I spoke to soon about eliminating jerkiness on "go here"/autopilot.  It's still there.
2011-08-11 03:06:38 +01:00
Justin Clark-Casey (justincc) 36f7d36fa1 instead of setting avatar rotation twice in SP.HandleAgentUpdate(), eliminate the second setting in AddNewMovement() 2011-08-11 02:54:15 +01:00
Justin Clark-Casey (justincc) 29093df1a7 get rid of intermediate local store of body rotation in ScenePresence, this is not used. 2011-08-11 02:36:02 +01:00
Justin Clark-Casey (justincc) 4402851b08 Get NPCs to revert to the correct 'resting' animation (e.g. stand or hover) after finishing their movement. This also fixes judder after an avatar has finished "go here"/autopilot movement in a viewer.
This meant reseting the SP.AgentControlFlags since the Animator uses these to determine the correct default animation.
2011-08-11 01:56:42 +01:00
Justin Clark-Casey (justincc) 951ffad81e If SP.MoveToTarget has been called with a force walk, begin by landing the avatar.
There is a bug here - once an avatar has landed it glides to its new position instead of performing a walk animation
2011-08-11 00:23:54 +01:00
Justin Clark-Casey (justincc) 5d6c9644fa early code to allow scripts to force npcs not to fly when moving to target
this is to allow walking on prims.  it will be up to the script writer to be sure that there is a continuous path.
currently implemented in osNpcMoveToTarget(), but none of this is final.
2011-08-10 01:47:37 +01:00
Justin Clark-Casey (justincc) 4cb8d6379d Stop trying to deregister caps or close child agents when an NPC is removed 2011-08-10 00:59:31 +01:00
Justin Clark-Casey (justincc) 92e96d394a When an NPC is created, stop telling neighbouring regions to expect a child agent 2011-08-09 23:11:07 +01:00
Justin Clark-Casey (justincc) 6878049952 get rid of bogus log message 2011-08-06 03:06:05 +01:00
Justin Clark-Casey (justincc) eec54adac5 remove some obsolete tests that are now done elsewhere 2011-08-06 02:38:38 +01:00
Justin Clark-Casey (justincc) e37f8cf902 Add a test to check that ScenePresence and circuit go away when a root agent is closed down 2011-08-06 02:27:25 +01:00
Justin Clark-Casey (justincc) 85e07c78fb refactor: Change SceneHelpers.AddClient() to AddScenePresence().
This seems to make more sense as we can get SP.ControllingClient
2011-08-06 02:17:41 +01:00
Justin Clark-Casey (justincc) 83ba35a26b rip out sog generation methods in ScenePresenceAgentTests and use SceneHelpers instead
Not that it matters, since these tests are pretty bogus anyway.
Also, renames some test classes for consistency.
2011-08-06 02:01:25 +01:00
Justin Clark-Casey (justincc) 76f46b2545 Do proper locking of m_localScenes list in SceneManager 2011-08-06 01:15:49 +01:00
Justin Clark-Casey (justincc) dad1d6df18 rename TestHelper => TestHelpers for consistency 2011-08-06 00:31:03 +01:00
Justin Clark-Casey (justincc) bda1a4be45 rename test SceneSetupHelpers -> SceneHelpers for consistency 2011-08-06 00:26:37 +01:00
Justin Clark-Casey (justincc) cba40de109 extend phantom flag regression test to toggle back off 2011-08-06 00:22:14 +01:00
Justin Clark-Casey (justincc) c6c91e6599 refactor: Fold most SOP.ScriptSet* methods back into script code. Simplify. 2011-08-06 00:13:08 +01:00
Justin Clark-Casey (justincc) ba89fc3aa1 Add regression test for setting phantom status on a scene object. This is not yet complete. 2011-08-05 23:42:05 +01:00
Justin Clark-Casey (justincc) 94d496cf2b remove the largely unused copy/pasted HandleAgentRequestSit() method 2011-08-05 00:57:43 +01:00
Justin Clark-Casey (justincc) 1918402cb1 if an NPC target is set to a ground location, then automatically land them when they get there.
This doesn't help where the target is a prim surface.  In these situations, it might be better to provide manual overrides so the script can control whethre an avatar flys there/lands, etc.
2011-08-04 03:08:35 +01:00
Justin Clark-Casey (justincc) 54ce029342 if an NPC move to target is above the terrain then make it fly to destination 2011-08-04 02:31:40 +01:00
Justin Clark-Casey (justincc) c678b75d65 if a move to target is set underground, constrain it to the terrain height 2011-08-04 01:45:56 +01:00
Justin Clark-Casey (justincc) 61a931490d move bAllowUpdateMoveToPosition switch outside of HandleMoveToTargetUpdate() 2011-08-04 01:30:37 +01:00
Justin Clark-Casey (justincc) 831f933ce6 only call move target code in SP.HandleAgentUpdate() if we're actually in the process of moving to a position 2011-08-04 01:22:01 +01:00
Justin Clark-Casey (justincc) 7b2b47530e move reset code out of HandleMoveToTargetUpdate() so that we only call it where needed instead of passing in a flag 2011-08-04 01:16:24 +01:00
Justin Clark-Casey (justincc) fc64cc2439 Make SIGNIFICANT_MOVEMENT SP constant a top-level property so that other classes can use it. 2011-08-04 01:05:43 +01:00
Justin Clark-Casey (justincc) 7f6f100c5a When the NPC reaches within the SIGNIFICANT_CLIENT_MOVEMENT distance of the target, move it directly to the target.
This makes the movement exact.  Regression test changed to check avatar reaches exact target.
Also has the nice side effect of making NPC animations continue to work after the first movement (which wasn't working).  However, avatar still pauses in mid-stride
2011-08-04 01:00:33 +01:00
Justin Clark-Casey (justincc) ba0c65e028 extend npc move test to check a second movement 2011-08-04 00:25:51 +01:00
Justin Clark-Casey (justincc) 6f913e8caf eliminate pre-existing unused SP.StopMovement() 2011-08-04 00:13:27 +01:00
Justin Clark-Casey (justincc) a2f5b4ac9a Rename HandleMoveToPositionUpdate() to HandleMoveToTargetUpdate() for consistency. Improve method doc. 2011-08-04 00:10:53 +01:00
Justin Clark-Casey (justincc) 0299cb060e eliminate a reset position flag by using functionally equivalent DCFlagKeyPressed 2011-08-04 00:06:01 +01:00
Justin Clark-Casey (justincc) 6ab01b338f Stop calling the SP.ResetMoveToTarget() code if a target is not actually set 2011-08-03 23:59:13 +01:00
Justin Clark-Casey (justincc) 31fb6b2d72 remove move to duck walk compensation - no longer required.
extends npc move to regression test to check stop after sufficient sim updates
2011-08-03 23:40:05 +01:00
Justin Clark-Casey (justincc) a333c60f28 refactor: rename the move to position methods to move to target to be consistent with terminology used by scene object part and elsewhere 2011-08-03 22:34:05 +01:00
Justin Clark-Casey (justincc) 2964467708 get rid of vestigal move to parameters 2011-08-03 22:11:05 +01:00
Justin Clark-Casey (justincc) 6e4ec29722 Do a partial fix/implementation of OSSL osNpcMoveTo()
Avatar moves and stops.  However, will stop in mid stride.
And if the move to position is in the air, avatar will continue to make vain and quite hilarious attempts to take off (but never doing so).
Clearly more work is needed.
2011-08-03 04:19:19 +01:00
Justin Clark-Casey (justincc) 68a5fe0431 Improve z axis move to/autopilot so the avatar does alternative crouch/huzzah when walking along the ground
Moving a flying avatar to a ground point doesn't yet land the avatar.  This may or may not be the best thing
2011-08-03 02:59:49 +01:00
Justin Clark-Casey (justincc) 30e816bfa2 Implement move to/autopilot for z axis movement as well.
This is jerky (an artifact of the way it's being done, I think), but it's better than on implementation.
2011-08-03 02:04:38 +01:00
Justin Clark-Casey (justincc) 0c23764ce2 get autopilot/go here to work immediately.
This works with viewer 1.23.5 and so in theory should work with libopenmetaverse.
2011-08-03 01:12:32 +01:00
Justin Clark-Casey (justincc) 1c126e6e22 refactor: Move update_movement_flag and the final check inside the m_allowMovement if in HandleAgentUpdate() since it's logically only ever used there 2011-08-03 00:55:52 +01:00
Justin Clark-Casey (justincc) f9689f5cc9 refactor: move out code from HandleAgentUpdate() which processes updates to move to a set position
Also comment out the really spammy log message I accidentally left in on the last commit.
2011-08-03 00:46:46 +01:00
Justin Clark-Casey (justincc) c122489e09 Partially fix autopilot/go here
This now works again except that it requires a click or avatar mvmt to get going
This is because the ScenePresence.HandleAgentUpdate() method doesn't trigger until the client does something significant, at which point autopilot takes over.
Even clicking is enough to trigger.
This will be improved presently.
2011-08-02 23:41:12 +01:00
Justin Clark-Casey (justincc) b6ac1c46cd Get rid of AvatarAppearance.Owner to simplify the code.
This is not used for anything - appearances are always properties of objects with ids (ScenePresence, AgentCircuitData) and just has the potential to get out of sync when the appearance is cloned.
2011-08-02 00:13:04 +01:00
Justin Clark-Casey (justincc) 59f548cda8 Get osNpcCreate appearance working with avatars that are currently in the scene.
Had to stop using AvatarService for now since it doesn't store baked texture IDs (which is why this was failing).
Also failing because cloning appearance was also cloning the AvatarApperance.Owner field, which we weren't then changing.
Extended TestCreate() to check this.
2011-08-01 23:41:29 +01:00
Justin Clark-Casey (justincc) b757583662 Comment out SOP logging message I accidentally left in 2011-07-31 03:41:35 +01:00
Justin Clark-Casey (justincc) aea7007533 refactor: split out ninja joint part of SOP.DoPhysicsPropertyUpdate() so that we don't have to look at it if it's not relevant 2011-07-31 02:50:50 +01:00
Justin Clark-Casey (justincc) d917010433 minor: Add method doc to collision subscription methods. Change method case to reflect OpenSim standards. 2011-07-30 03:11:36 +01:00
Justin Clark-Casey (justincc) 8c3eb324c4 When using osTeleportAgent() and osTeleportAvatar(), only teleport if the region name exactly matches (not near matches)
This is to prevent situations where the first name returned by GridService.GetRegionsByName is not one that exactly matches the given region name, even when there is an exact match later on in the list.
Only the above two functions call this teleport method (the map uses a different routine) so this seems safe to change.
Addresses http://opensimulator.org/mantis/view.php?id=5606
2011-07-29 00:00:35 +01:00
Justin Clark-Casey (justincc) 504de8bc47 Pass the first name and last name from the agent circuit data to the authorization service rather than from the account.
This is to accomodate situations where the authorization service is being used by the hypergrid, where visitors have no user account.
See http://opensimulator.org/mantis/view.php?id=5517, this code is somewhat adapted/cleaned up from Michelle's patch
I'm a little ambivalent about this since visitors could put anything in firstname/lastname so it's not much of an auth measure.
It's up to the auth service to decide which data it actually uses.
Possibly we should be passing through other info such as agent circuit ip
2011-07-23 03:48:53 +01:00
Justin Clark-Casey (justincc) f0895028e9 Remove manually permissions settings on all current library items so that they use the defaults instead.
Some items had completely wrong permissions - this is easier than correcting them all.
The ability to set permissions in xml is retained since there are use cases for this (e.g. to create no-mod library scripts)
2011-07-23 02:13:11 +01:00
Justin Clark-Casey (justincc) fcaa4f6012 Revert "Don't load current/next/everyone/base permissions from the library item xml files - always use PermissionMask.All instead (which was the existing default)."
There actually are uses for this.  I will correct the perms instead since some entries appear to be wrong.

This reverts commit 667b54f5a2.
2011-07-23 02:05:51 +01:00
Justin Clark-Casey (justincc) 667b54f5a2 Don't load current/next/everyone/base permissions from the library item xml files - always use PermissionMask.All instead (which was the existing default).
Library items always need the same permissions, so it doesn't make sense to load them from the xml files.  This just opens the door to permissions mistakes.
2011-07-23 01:59:14 +01:00
Justin Clark-Casey (justincc) aadc4eb3b8 Fix problem where sculpts were not getting physical proxies
Fixed this by inspecting Shape.SculptEntry at various places instead of Shape.SculptType.  Sculpties actually have a SculptType of Cylinder - only true mesh is SculptType.Mesh
This addresses http://opensimulator.org/mantis/view.php?id=5595
2011-07-22 19:23:38 +01:00
Oren Hurvitz 02e54c57c4 Generate the initial maptile asynchronously
Signed-off-by: Melanie <melanie@t-data.com>
2011-07-22 09:52:21 +01:00
Careminster Team 51c47677a1 Tidy up a superfluous AddPrimShape override in PhysicsScene 2011-07-19 18:17:19 +01:00
Justin Clark-Casey (justincc) ee829a71c2 On all undo/redo operations, consistently lock the undo object for everything, in order to avoid any deadlock issues. 2011-07-19 06:13:05 +01:00
Justin Clark-Casey (justincc) c50533659a If we store an undo, wipe anything already present on the redo stack
This stops problems when we undo a few steps and start off down another path.
Surprisingly, apart from this now fixed problem, redo appears to be working too.
2011-07-19 06:11:16 +01:00
Justin Clark-Casey (justincc) ec1ecd3633 stop redo throwing an exception if there is nothing to redo 2011-07-19 06:05:23 +01:00
Justin Clark-Casey (justincc) 25c532f2ec refator: simplify UndoState.Compare() code 2011-07-19 05:58:52 +01:00
Justin Clark-Casey (justincc) 9dd5a24495 rip out pointless null checks in UndoState where part can never be null 2011-07-19 05:51:19 +01:00
Justin Clark-Casey (justincc) bc3679b67d Fix undo when changing just the root prim's position in a linkset.
I think (ha ha) this largely fixes undo, except for the fact that rotation a set of prims with 'edit linked parts' selected doesn't quite work properly (though this works fine if the checkbox isn't selected).
Also, the double undo bug for resize is still present.
Redo might be incredibly buggy, haven't even looked at that yet.
2011-07-19 05:46:17 +01:00
Justin Clark-Casey (justincc) 0ef29da9b2 refactor: rename UpdatePrimPosition() to UpdatePrimGroupPosition() for consistency 2011-07-19 05:20:04 +01:00
Justin Clark-Casey (justincc) 62325829ec comment out all kinds of debugging guff 2011-07-19 05:14:58 +01:00
Justin Clark-Casey (justincc) 1fdb16f1cd Fix undo for rotation of the root prim in a linkset on its own.
The only obviously broken things right now are the undo of the position of just a root prim (stays in place) and the fact that resizes need two undoes.
2011-07-19 05:05:50 +01:00
Justin Clark-Casey (justincc) b2722e984a Fix undo of rotation of single prims in a linkset 2011-07-19 04:40:02 +01:00
Justin Clark-Casey (justincc) 97f1edfd95 Fix undo of prim group rotation.
This isn't that great since I think I broke it a few commits earlier.
Undo of rotation of individual prims in a linkset is still broken
2011-07-19 04:15:27 +01:00
Justin Clark-Casey (justincc) 4b9ef4f39c Rename UpdatePrimRotation() to UpdatePrimGroupRotation() since this is what it actually does and is more consistent with other method names. 2011-07-19 03:44:49 +01:00
Justin Clark-Casey (justincc) 7c468cda36 Stop undo of just the root prim position in the linkset from shifting the whole linkset.
However, what happens now is that undo just doesn't do anything when the root prim is selected on its own.  This requires more code than just fiddling with undo states.
2011-07-19 03:38:22 +01:00
Justin Clark-Casey (justincc) c94dc95844 fix undo when resizing of non-root individual prims in a linkset
undo resize, rotation and position still needs fixing when only editing root prim of a linkset
2011-07-19 03:27:16 +01:00
Justin Clark-Casey (justincc) 430a4aeba8 Fix undo for resizing linksets
This involves implementing a boolean in UndoState to signal whether the undo needs to be done for an entire group/linkset or just a single prim
Resizing individual components of linksets is still dodgy.
Resizing still has to be down twice, since for some reason the client is sending two multiobjectupdate packets on every resize except the very first.  This applies to single prims and linksets.  Need to look into this.
2011-07-19 03:01:54 +01:00
Justin Clark-Casey (justincc) 86f45f6fe7 remove undo state storage in a few places where it's pointless
no functional effect - existing bugs still remain
2011-07-19 01:24:43 +01:00
Justin Clark-Casey (justincc) 6fc74b36d1 Make various tweaks to undo code in an effort to get things working better.
Undo rotation and position appear to be working.
Resizing a single prim appears to be working, though the undo has to be done twice.
Resizing a group of prims still does not work properly - possibly because in the UndoState we don't store a knowledge of when we're resizing a whole group rather than individual prims.
This needs to be addressed.
2011-07-18 04:54:21 +01:00
Justin Clark-Casey (justincc) 3f8e571b78 Use a standard generic system stack for the undo/redo stacks instead of our own homebrew.
system stack also uses an array, so no performance penalty.
Also exposes undo count and adds a test assertion for correct undo count after resize
2011-07-18 02:01:12 +01:00
Justin Clark-Casey (justincc) e9a739f45f refactor: group all the undo/redo code in SOP into one place for easier code reading 2011-07-18 01:33:57 +01:00
Justin Clark-Casey (justincc) f5ddf37112 Replace ifs in SOG.GroupResize() with Math.Min()
Also fiddle a bit with undo.  This is not currently working properly, though to be fair it also didn't appear to work in 0.7.1.1 either (at least for resize).
Will get some more attention soon.
2011-07-16 05:23:21 +01:00
Justin Clark-Casey (justincc) 9a80adf33a remove now unncessary parts of SceneObjectGroup.Resize() 2011-07-16 04:49:21 +01:00
Justin Clark-Casey (justincc) 122745fe1c refactor: replace scale limiting code with more elegant Math.Min calls 2011-07-16 04:28:49 +01:00
Justin Clark-Casey (justincc) 2b68ac4ba3 refactor: Push all part resize code down into SceneObjectPart.Resize() 2011-07-16 04:22:57 +01:00
Justin Clark-Casey (justincc) 4b5a6b655b add test for resizing one part in a group 2011-07-16 03:52:30 +01:00
Justin Clark-Casey (justincc) df2a59d31b refactor: make SceneObjectGroup.GroupScale() a property rather than a mehod 2011-07-16 03:30:14 +01:00
Justin Clark-Casey (justincc) 0f9882db5b minor: add a log warning if a sculpt/mesh async asset request returns no data 2011-07-16 03:24:36 +01:00
Justin Clark-Casey (justincc) 6f9b855719 refactor: remove pointless sender != null tests, etc, in AssetReceived, since the method called always belongs to the object that generated the request 2011-07-16 03:16:24 +01:00
Justin Clark-Casey (justincc) 982e71b6b8 eliminate unused and redundant SceneObjectGroup.AssetReceived() 2011-07-16 03:08:28 +01:00
Justin Clark-Casey (justincc) c82f19e41c fix build break from last commit 2011-07-16 03:06:30 +01:00
Justin Clark-Casey (justincc) 3fc12e7224 Eliminate the pointless textured id argument to SculptTextureCallback 2011-07-16 03:02:28 +01:00
Justin Clark-Casey (justincc) 27fae36a21 remove the need to supply SceneObjectGroup.GroupResize() with a localId.
This is utterly pointless scene we already know which sog we're dealing with.
2011-07-16 02:53:36 +01:00
Justin Clark-Casey (justincc) 50bd48542c Add very basic test for resizing a scene object with one prim 2011-07-16 02:44:00 +01:00
Justin Clark-Casey (justincc) da7340b9fb If resized shape is a mesh/sculpt, leave it to the mesh asset callback to trigger the physics actor taint.
In the last commit, the fix was made by updating all the child prim physics actors with the new size rather than just the root part.
2011-07-16 01:42:56 +01:00
Justin Clark-Casey (justincc) 18652eb87e Fix physics proxy regeneration when a mesh with more than one submesh is resized
Addresses http://opensimulator.org/mantis/view.php?id=5584
2011-07-16 01:36:27 +01:00
root e9dbe54ab1 Fix some local id issues in physics glue 2011-07-15 20:07:59 +01:00
Robert Adams b55076990c fix duplication of physical objects for physics engines that care about the initial value of localID 2011-07-15 11:37:34 -07:00
Justin Clark-Casey (justincc) df0e5cc9fe When a mesh object is added to a scene, delay adding the physics actor until the sculpt data has been added to the shape (possibly via an async asset service request)
This prevents spurious 'no asset data' for meshes added on startup.
2011-07-12 02:33:09 +01:00
Justin Clark-Casey (justincc) 8e44a8e2b9 Properly regenerate physics proxy when a mesh is resized.
This is done in SOP.Resize().  More common code from callers needs to be refactored into this method to reduce confusing copy/pasting
2011-07-11 03:47:49 +01:00
Justin Clark-Casey (justincc) 0badf3718d refactor: push the part of SceneObjectGroup.CheckSculptAndLoad() that actually deals with the part into a SceneObjectPart.CheckSculptAndLoad() method 2011-07-11 03:35:29 +01:00
Justin Clark-Casey (justincc) 2f3d0e209f When a sculpt/mesh texture is received by a part on a callback request, don't do the unnecessary work of copying the base shape.
Just setting the new base shape is enough to reinsert the sculpt data and set the taint.
Also cleans up a few more left-in debugging messages.
2011-07-11 03:13:59 +01:00
Justin Clark-Casey (justincc) 6a15464b0a refactor: Make arguments to SceneGraph.UpdatePrimFlags() more readable 2011-07-11 02:29:19 +01:00
Justin Clark-Casey (justincc) 01b98c2e62 refactor: Make arguments for SceneObjectGroup.UpdatePrimFlags() more readable 2011-07-11 02:18:19 +01:00
Justin Clark-Casey (justincc) e68ae44b6b minor: remove mono compiler warning 2011-07-11 02:11:37 +01:00
Justin Clark-Casey (justincc) c6d4304a04 refactor: very minor space insertion 2011-07-11 02:11:16 +01:00
Justin Clark-Casey (justincc) c964114f7e refactor: make argument to SOP.UpdatePrimFlags() more readable 2011-07-11 02:09:11 +01:00
Justin Clark-Casey (justincc) 59aedbc94b Rename SceneSetupHelpers.AddRootAgent to AddClient() to better represent its effects and return object 2011-07-09 02:25:40 +01:00
Justin Clark-Casey (justincc) 5e8900dfd0 minor: code tidy and inserted log lines for future use.
Unable to get to the bottom of why resizing a mesh fails to properly reset the physics proxy, when toggling phantom does
After a mesh is generated, the existing sculptdata is set to zero in PrimitiveBaseShape to save memory
When phantom is toggled, the sculptdata is regenerated before remeshing.
But on resize, the sculptdata is not regenerated.
So clearly, resetting sculptdata is possible, but haven't quite been able to pin down how this is being done when phantom is toggled.
2011-07-09 00:35:30 +01:00
Justin Clark-Casey (justincc) 1dcad4ac66 minor: commented out log lines for future use and very small code tidy 2011-07-08 17:58:01 +01:00
Justin Clark-Casey (justincc) e41093635a fix build break I just introduced 2011-07-01 21:37:03 +01:00
Justin Clark-Casey (justincc) 9f72fbcb75 Add an async inventory details sender to respond to FetchInventory packets.
If a user with a very large inventory right-clicks on their "My Inventory" folder, viewer 1 code will send a massive number of Fetchinventory requests.
Even though each is handled asynchronously via a pool thread, the sheer frequency of requests overwhelms the pool and freezes inbound packet handling.
This change makes the first Fetchinventory thread also handle subsequent requests, freeing up the other threads.
Further efficiencies could be made by handling all the items in a particular FetchInventory request together, rather than separately.
2011-07-01 21:25:40 +01:00
Justin Clark-Casey (justincc) c84a1bd99f Don't follow inventory links of links.
This is to avoid problems with corrupt inventories where an inventory link target points back at the source's folder
No viewer has been observed to set these up as of yet.  If this ever happens, we will need a more sophisticated solution to track sent folders within the recursion
2011-06-29 01:33:41 +01:00
Justin Clark-Casey (justincc) 1b4c08730e refactor: simplify redundant double containing folder check 2011-06-29 00:56:35 +01:00
Justin Clark-Casey (justincc) 3f0b8db0c1 If an inventory link target is in the same folder as the source, then don't recursively request that folder.
Currently, this should never actually happen but certainly best to handle this case
2011-06-29 00:54:53 +01:00
Justin Clark-Casey (justincc) 22f25fae38 Hack around with the NPC module to get osNpcCreate() partially working again.
This now creates an avatar but appearance is always cloudy.
Move doesn't work.
Really, creating an NPC should only involve a ScenePresence rather than doing anything with IClientAPI, since an NPC has no viewer to communicate with!
2011-06-29 00:28:22 +01:00
Justin Clark-Casey (justincc) 1a0a9d2290 Implement the latest mesh mechanism so that rezzing the uploaded mesh now works again.
Many thanks to the aurora project for pioneering this.
This code is almost certainly not bug free, but it does at least appear to handle simple meshes (except when the viewer crashes - but it is beta!).
2011-06-24 21:54:01 +01:00
Mic Bowman ad84728aba Add localID to physical object creation functions. 2011-06-15 11:31:32 -07:00
Mic Bowman 29da57e380 Add the PhysActor to the correct SOP when duplicating a physical
prim. Thanks, MisterBlue
2011-06-15 11:26:45 -07:00
Justin Clark-Casey (justincc) fc7e17baf7 When serializing objects, stop accidentally using the green text colour value for alpha
This addresses http://opensimulator.org/mantis/view.php?id=5111
2011-06-10 21:49:25 +01:00
Justin Clark-Casey (justincc) b5518dc906 minor: Add some commented out destructor logging messages for potential future use.
At the moment, client and scene objects are being garbage collected as expected, at least in simple scenarios.
2011-06-10 20:40:14 +01:00
Justin Clark-Casey (justincc) 2bc8dcfdbd minor: add method doc to make it clear that click action is fired when the click action is changed, not when a prim is clicked 2011-06-10 02:27:45 +01:00
Diva Canto 80fc607d75 Fixed "Unknown User" listed as creator/owner on prims created with the Build button by foreign visitors. Added command to the UserManagementModule to list all the known bindings between user UUIDs and their names: show user-names. 2011-06-08 16:01:33 -07:00
Diva Canto 9759b2a4bb Added EventManager.OnPrimsLoaded, an event that modules can hook up onto so that they know when the scene's objects have been loaded from the DB. 2011-06-08 15:18:14 -07:00
Diva Canto 02b40670be This makes the display names work better for foreigners 2011-06-07 12:10:57 -07:00
Justin Clark-Casey (justincc) fe471b6424 Extend TestGiveInventoryFolder() to test giving back the freshly received folder 2011-06-04 02:44:53 +01:00
Justin Clark-Casey (justincc) 12b1cbf8bf Fix give inventory tests to use different users rather than (accidentally) the same user. Extend TestGiveInventoryItem() to test giving back the same item. 2011-06-04 02:39:26 +01:00
Justin Clark-Casey (justincc) fe890554fb insert an InventoryArchiveUtils.FindItemsByPath() to return multiple items rather than just the first one 2011-06-04 01:37:01 +01:00
Justin Clark-Casey (justincc) 896f039513 create TestGetInventoryItem() 2011-06-04 00:51:49 +01:00
Justin Clark-Casey (justincc) 1543fd7fff extend TestGiveInventoryFolder() to check for the receipt by user 2 2011-06-04 00:20:54 +01:00
Justin Clark-Casey (justincc) d09210da86 minor: add in method print out to new test 2011-06-03 23:15:31 +01:00
Justin Clark-Casey (justincc) 527e10a04e add stub UserInventoryTests.GiveInventoryFolder(). Not yet complete 2011-06-03 23:13:05 +01:00
Diva Canto e33cedfd42 HG Landmarks now working. 2011-06-03 10:26:58 -07:00
Diva Canto 76c60f1f99 Moved CreateNewInventoryItem to the InventoryAccessModule in preparation for supporting HG landmarks. 2011-06-03 08:27:01 -07:00
BlueWall 3326e417b4 Merge branch 'master' of /home/opensim/src/opensim 2011-05-28 16:21:30 -04:00
BlueWall c7e18f9017 Adding an event to signal that logins are enabled
Added an event to signal the eabling of logins and added an alert to send to a configured service.
2011-05-28 16:20:10 -04:00
BlueWall d2c2a4301b Merge branch 'master' of /home/opensim/src/opensim 2011-05-28 00:39:21 -04:00
BlueWall 99f42c0a6e Add option to disable logins
This just covers script loading for now. More to come.
2011-05-28 00:35:06 -04:00
Justin Clark-Casey (justincc) e9988a3728 Make sure culture is en-US when saving archive related xml.
This might resolve http://opensimulator.org/mantis/view.php?id=5475
2011-05-27 21:19:20 +01:00
Justin Clark-Casey (justincc) 4e4db749eb If parsing fails in the primitive base shape (which prints out a debug log message), also print out the name and uuid of the part containing this shape.
This is to help in diagnosing parsing failures.
2011-05-27 20:59:35 +01:00
Melanie e398c33648 Add PayPrice to serialization format Xml2 2011-05-25 12:17:46 +01:00
Melanie 28c25d8477 Allow disabling the legacy backup mechanism to avoid the object clone if
backup is not used.
2011-05-24 04:03:51 +01:00
Melanie 178d541dca Add an event for an orderly region shutdown that fires once per region before
the SceneGraph is torn down.
2011-05-24 01:19:48 +01:00
Justin Clark-Casey (justincc) bb9b317f15 Get rid of OpenSim.Tests.Common.Setup subpackage in favour of just OpenSim.Tests.Common instead 2011-05-21 01:05:20 +01:00
Justin Clark-Casey (justincc) d7e5b76d73 refactor: rename AddSceneObjectItem to AddSceneObject 2011-05-21 00:39:42 +01:00
Justin Clark-Casey (justincc) 084059319c refactor: move scene object item creation code into TaskInventoryHelpers 2011-05-21 00:37:20 +01:00
Justin Clark-Casey (justincc) 9103fe84d5 move test task inventory notecard item creation into a new TastInventoryHelpers class 2011-05-21 00:25:58 +01:00
Justin Clark-Casey (justincc) 0050bb438c refactor: use SceneSetupHelpers.CreateSceneObject() 2011-05-21 00:15:22 +01:00
Justin Clark-Casey (justincc) 534ee52a12 rename UserProfileTestUtils to UserAccountHelpers to be consistent with other test helper names 2011-05-21 00:11:52 +01:00
Justin Clark-Casey (justincc) 3fed61a5d5 refactor: in TaskInventoryTests, use UserProfileTestUtils.CreateUserWithInvetory() 2011-05-21 00:07:24 +01:00
Justin Clark-Casey (justincc) 90567a9eaa refactor Scene.RezObject() to use AddNewSceneObject() rather than copy/pasting code with small differences 2011-05-21 00:02:53 +01:00
Justin Clark-Casey (justincc) f2095ea279 refactor TestRezObjectFromInventoryItem() 2011-05-20 23:45:39 +01:00
Justin Clark-Casey (justincc) 4b0fc4faef implement Scene.GetSceneObjectGroup(string name) to match the equivalent GetSOP method 2011-05-20 23:41:14 +01:00
Justin Clark-Casey (justincc) 91a9f30b16 implement Scene.GetSceneObjectGroup(UUID fullID) using existing index 2011-05-20 23:34:34 +01:00
Justin Clark-Casey (justincc) 7ed419217f add test for rezzing an object from a prim item 2011-05-20 23:22:27 +01:00
Justin Clark-Casey (justincc) c562b9ef19 correct small mistake in "delete object name <name>" usage summary 2011-05-18 00:22:09 +01:00
Justin Clark-Casey (justincc) 784f70f704 don't throw a null reference if an inventory link target doesn't exist when we're inspecting in order to send the required inventory folders 2011-05-17 02:25:05 +01:00
Justin Clark-Casey (justincc) 5573fcfa93 Fix adding/removing/replacing outfits in viewer 2
To get this to work, I had to disable the dupe link check I put in a couple of commits ago.
When the viewer adds wearables to an existing outfit, it first requests deletes of all the existing links before creating a new set.
Since these messages are async, the creates were being received before the deletes had a chance to complete, resulting in missing current outfit links.
However, the dupe check shouldn't be as important now that broken links have been fixed - it was the broken links that were causing the client to create dupes.
Tested on kokua 0.1.0 WIP and SL 2.6.3.  I now have no problems managing outfits on my standalone.
2011-05-14 00:10:27 +01:00
Justin Clark-Casey (justincc) 5f9edd195c Fix broken inventory links on viewer 2.
It appears that if the viewer requests a folder containing links, we must also send the folders that contain the link targets first.
This was tested with Kokua 0.1.0 WIP though I predict it will also work with other viewer 2s
2011-05-13 03:24:19 +01:00
Justin Clark-Casey (justincc) 9988bff9e3 Add a smidgen of method doc about the fact that item links reuse the asset id item slot 2011-05-12 03:18:53 +01:00
Justin Clark-Casey (justincc) ac12ace6f1 Prevent viewer 2 from creating a duplicate outfit inventory links.
I believe this is safe since there is a 1-1 correspondence between link item and worn item (i.e. you can't be wearing the same item at two spots simultaneously in one outfit).
This should stop lots of duplicate links being created when viewer 2 is used.
However, this doesn't prevent broken inventory links, which I believe is timing related since the effect is not consistent (e.g. keep relogging and the viewer should end up seeing them correctly) .  I think we actually see this problem on viewer 1 as well.
It might be easier just to implement the Fetch*2 inventory caps which are documented at http://wiki.secondlife.com/wiki/Inventory_API.  WebFetch* has been deprecated by Linden Lab since viewer 2.5.1 and according to the sl wiki, "has numerous bugs".
2011-05-12 02:46:13 +01:00
Melanie 2b88d8f93f Add commands to delete objects by name, UUID, creator or owner 2011-05-09 01:28:23 +01:00
dahlia eaa33cf478 adjust avatar terse update packet filter distance error threshold based on avatar speed 2011-05-06 16:56:54 -07:00
Justin Clark-Casey (justincc) 04ecd748d9 remove further mono compiler warnings 2011-05-06 22:47:41 +01:00
Diva Canto 74e981e796 One more bug fix concerning library items that weren't being copied to user's inventory. Also commented verbose debug message. 2011-05-06 09:56:27 -07:00
Diva Canto eafc01cf8f Bug fix: iars under Library weren't being loaded. 2011-05-06 09:08:24 -07:00
Diva Canto 6d34932775 Merge branch 'master' into caps 2011-05-04 20:30:33 -07:00
Diva Canto 6c503e75ac Put the previous state back in the attachments in case the agent transfer fails. 2011-05-04 12:04:35 -07:00
Diva Canto a0f3b23065 Merge branch 'master' into caps 2011-05-04 07:31:32 -07:00
dahlia 4c59d57596 use getters instead of member variables in velocity network filter code and add some more descriptive comments. 2011-05-04 03:29:06 -07:00
dahlia 13ab00e45a adjust terse avatar update filtering to send updates when distance traveled does not match expected distance, rather than at a fixed time period. this should smooth avatar motion somewhat when moving in a straight line and velocity is constant. 2011-05-03 19:47:50 -07:00
Diva Canto f79400e94c Broke down Caps.cs into a generic Caps object that simply registers/unregisters capabilities and a specific bunch of capability implementations in Linden space called BunchOfCaps.
Renamed a few methods that were misnomers.
Compiles but doesn't work.
2011-05-01 18:22:53 -07:00
Diva Canto 00e94b0ba8 Check for RegionID instead of RegionHandle. Other minor tweaks 2011-04-30 16:53:11 -07:00
Melanie 99b35d3ca6 When coming in from a legacy region without fatpacks, start scripts the
usual way
2011-04-30 16:20:20 +01:00
Diva Canto 4d5d6222f7 Delaying starting the scripts on TPs and crossings until the agent is root. 2011-04-29 17:09:48 -07:00
Diva Canto 0d49611f6d Remove the scripts of the attachments in the departing region and recreate them if fail. 2011-04-29 15:52:06 -07:00
Diva Canto 73caa4e94a Minor correction to yesterday's changes. Make normal prim crossing (no attach) work well again. 2011-04-29 08:42:51 -07:00
Diva Canto 97790075fe Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-04-28 20:47:34 -07:00
Diva Canto 9892e115cc Fatpack message on agent transfers: 1 message only (UpdateAgent) containing the agent and all attachments. Preserves backwards compatibility -- older sims get passed attachments one by one. Meaning that I finally introduced versioning in the simulation service. 2011-04-28 20:19:54 -07:00
Justin Clark-Casey (justincc) cd7517ccb9 Stop CHANGED_INVENTORY firing twice if a notecard is edited in prim.
Addresses http://opensimulator.org/mantis/view.php?id=5444
Fix is to stop the asset transaction calling UpdateInventoryItem() since the caller is doing it anyway, which is more correct.
This did not effect scripts.
2011-04-28 22:59:12 +01:00
Justin Clark-Casey (justincc) 50aa93137d Fix a bug where physical objects rezzed with an initial velocity by script do not receive this velocity.
This is a minimal fix for the 0.7.1 release, pending a non copy/paste solution.
This hopefully addresses http://opensimulator.org/mantis/view.php?id=5457
The bug was introduced in commit 3ba5eeb
2011-04-28 00:59:21 +01:00
dahlia 16f6f55f2d network traffic reduction - decrease update frequency for moving avatars when velocity is unchanged 2011-04-26 16:22:44 -07:00
Mic Bowman 1505fbb647 Add back the high prioritization for other avatars in the
BestAvatarResponsiveness prioritizer.
2011-04-26 08:54:05 -07:00
Mic Bowman 77ab7ce084 Fixed the transmission of throttles from root agent to child
agents. Child throttles are based on the number of child agents
known to the root and at least 1/4 of the throttle given to
the root.
2011-04-25 15:11:29 -07:00
Mic Bowman 1d7c83c39f Merge branch 'master' into queuetest 2011-04-25 08:41:21 -07:00
Mic Bowman a3bd769cb3 Added a second immediate queue to be used for the BestAvatar policy
and currently used for all of an avatars attachments by the other
policies. Also changed the way items are pulled from the update queues
to bias close objects even more.
2011-04-22 14:55:23 -07:00
Melanie 398bb2149a Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2011-04-21 23:04:01 +01:00
Melanie 13d6e05d5a Implement agent limits 2011-04-21 23:03:38 +01:00
Justin Clark-Casey (justincc) e36cab99fd minor: small amount of method doc and some commented out odds and ends 2011-04-21 18:45:05 +01:00
Justin Clark-Casey (justincc) 63c1b7e475 Alter uuid gather so that it properly analyzes coalesced objects.
This should correct save all the assets required for the items within the coalesced objects in an IAR.  This should also correctly gather the items on hypergrid takes.
2011-04-21 18:12:29 +01:00
Mic Bowman 7759bda833 Added an "immediate" queue to the priority queue. This is
per Melanie's very good suggestion. The immediate queue is
serviced completely before all others, making it a very good
place to put avatar updates & attachments.

Moved the priority queue out of the LLUDP directory and
into the framework. It is now a fairly general utility.
2011-04-20 21:58:49 -07:00
Justin Clark-Casey (justincc) 71114d4ad1 refactor: rename DeleteToInventory() to CopyToInventory()
DeleteToInventory() is misleading - it is the caller that decides whether to delete or not
2011-04-18 21:34:26 +01:00
Mic Bowman 452ae375f0 Merge branch 'master' into test-merge0418 2011-04-18 11:29:43 -07:00
Justin Clark-Casey (justincc) 66a62678e5 get rid of all traces of the now used mock service infrastructure 2011-04-15 01:37:27 +01:00
Justin Clark-Casey (justincc) 54e8855819 remove mock asset service for tests in favour of always using the real one 2011-04-15 01:23:26 +01:00
Justin Clark-Casey (justincc) a0d80140f2 Make all the objects in a coalescence reappears after being loaded from an IAR. This still doesn't work proprerly since some required textures/contained item assets might be missing.
From pure code inspection, it looks like the uuid gatherer may get most asset uuids because the scene object serializer naively pulls non-root parts from all contained scene objects into one mega-object.  However, root part uuids may well still be missing, and there may be other odd artifacts from this bug.
It appears that storing the size of the coalescence and the offsets is redundant, since one can work out this information from the position data already in the scene object groups.
2011-04-15 00:42:06 +01:00
Justin Clark-Casey (justincc) 4b05e667cb Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-04-14 20:15:34 +01:00
Mic Bowman 22b307ea1c Merge branch 'master' into queuetest 2011-04-14 11:59:25 -07:00
Justin Clark-Casey (justincc) aaf9125869 simplify coalesced object tests by using existing scene object set up utils
this change makes it possible to set an absolute position on a group before it is put into a scene.
2011-04-14 17:33:55 +01:00
Mic Bowman 6ed6b46aad Comment out the warning if the prioritizer runs without a fully
initialized scene presence. Not sure why we are dumping updates
to a client that isn't there yet...
2011-04-13 21:01:51 -07:00
Mic Bowman 3fe22126ca First pass at moving object property requests into a queue similar
to the entity update queue. The number of property packets can
become significant when selecting/deselecting large numbers of
objects.

This is experimental code.
2011-04-13 15:37:25 -07:00
Justin Clark-Casey (justincc) c81f5bfc5c Adjust the quanterions used in the rez coalsced object tests to get sensible bounding box and offset numbers.
Extend test to check position of objects in the rezzed coalescence.
2011-04-13 22:29:12 +01:00
Justin Clark-Casey (justincc) 68cc5b46fe refactor: move code to obtain the coalescence size and object offsets into CoalescedSceneObjects from the serializer. 2011-04-13 21:48:16 +01:00
Justin Clark-Casey (justincc) 58efd761d1 Add coalesced scene objects class and serializer. This is currently only used by the TestRezCoalescedObject() regression test.
This structure matches the existing one for SceneObjects and will allow code to be reused by the uuid gatherer, other tests, etc.
Test is not yet fully implemented due to a bug in rezzing coalesced objects where they all get the same name as the item.
Only one object should get the same name as the item, which appears to be the one selected last when the the objects were coalesced in the first place.
This bug will be addressed shortly.
2011-04-13 21:17:43 +01:00
Diva Canto 5c870fce54 Bug fix in object serialization -- sculpt data was wrong. 2011-04-12 19:45:33 -07:00
Justin Clark-Casey (justincc) b0889ed92a refactor: simplify bRayEndIsIntersection boolean set from RayEndIsIntersection byte 2011-04-12 22:30:43 +01:00
Justin Clark-Casey (justincc) 8e0d2cc43b If an object is rezzed directly from a prim inventory then give it the rotation it was stored with. 2011-04-12 22:21:46 +01:00
Justin Clark-Casey (justincc) 3ba5eeb6c3 Allow a null rotation to be passed in to RezObject so that we can control whether to use the serialized rotation or not. Not used yet. 2011-04-12 22:15:40 +01:00
Justin Clark-Casey (justincc) 98d7de22dc Fix (add) ability to rez objects by dragging them out of another prim's inventory.
This should happen if the client supplies a task ID with the RezObject call.
The rez goes through the same code as llRezObject(), so the same perms are applied.
Rotation isn't yet preserved, this should be fixed shortly.
2011-04-12 18:31:41 +01:00
Mic Bowman ebc249e3be Changed the "not in scene" check in the prioritizier to just
a warning. There appears to be a race condition on slow logins
that attempts to prioritize before the scene presence is fully
initialized.
2011-04-10 17:02:40 -07:00
Mic Bowman 0bd06d8ba8 Fixed the prioritizer functions for the new priority queues 2011-04-10 16:57:02 -07:00
Mic Bowman 77cf9405de Implements adaptive queue management and fair queueing for
improved networking performance.

Reprioritization algorithms need to be ported still. One is
in place.
2011-04-10 16:57:02 -07:00
Justin Clark-Casey (justincc) 9bc2705f37 Fix bug where on duplication, the root part local id was continually used in populating the local id scene object index instead of each part's local id 2011-04-06 20:52:36 +01:00
Justin Clark-Casey (justincc) 8318915d7e Signal prim count taint if the AbsolutePosition of a scene object changes.
This updates prim counts correctly if an object is moved by something other than an avatar (e.g. scripts, region modules)
Create TestMoveOwnerObject() regression test for this case.
2011-04-06 20:48:00 +01:00
Justin Clark-Casey (justincc) 2497962360 Change some text to make the autoreturn mechanism more obvious, and align with the fact that it's one word rather than two. 2011-04-05 22:25:00 +01:00
Justin Clark-Casey (justincc) 0e465da187 remove now unused individual LandData prim counts.
However, the calls to the land management module to record prims need to remain, since they were also being used to return owner object lists, etc.
This is probably why prim counts were being done there in the first place.
2011-04-05 21:25:54 +01:00
Melanie b385d4aa03 Implement taking of coalesced objects.
WARNING!!!!!
You can TAKE them, but you can't REZ them again. Only the first of the contained
objects will rez, the rest is inaccessible until rezzing them is implemented.
Also, rotations are not explicitly stored. This MAY work. Or not.
2011-04-03 20:24:44 +01:00
Melanie e8e940e33e Make CHANGED_OWNER work for deeding and god-mode in-world change 2011-04-03 14:16:41 +01:00
Melanie 3a113f9902 A stab at making CHANGED_OWNER work 2011-04-01 22:04:29 +01:00
Justin Clark-Casey (justincc) 8022400bd4 Remove unused Datastore parameter from RegionInfo (legacy from early 2008) 2011-03-31 22:16:09 +01:00
Justin Clark-Casey (justincc) f2d2470c25 When an object is duplicated, add it to the full/local id SOG indexes as well as Entities 2011-03-26 02:24:32 +00:00
Justin Clark-Casey (justincc) 26d16567e1 Make SceneGraph.ForEachSOG() execute once for each SOG, not once for each prim (e.g. a SOG with 3 prims would have the action executed three times).
To do this, a new SceneObjectGroupsByFullID index in SceneGraph which just index's prims by their root part UUID, in order to avoid the inefficiency of filtering existing lists.
Existing callers to SceneGraph.ForEachSOG() did not fail due to the multiple per SOG action executions - they were probably just much less efficient.
Code suggests that no callers expected ForEachSOG() to execute actions on sog multiple times
2011-03-26 00:53:19 +00:00
Justin Clark-Casey (justincc) f30bf429c2 refactor: rename SOG collections in SceneGraph to make it clearer that they are indexing each part's UUID, not just the root part. 2011-03-26 00:42:48 +00:00
Justin Clark-Casey (justincc) d011896341 Add generic EventManager.OnObjectAddedToScene and get PrimCountModule to listen for that rather than EventManager.OnParcelPrimCountAdd
OnParcelPrimCountAdd had the wrong semantics for the PrimCountModule - it was invoked for every entity in the scene, not just new ones, which would screw up the untainted count.
Extend automated test for this scenario.
2011-03-23 21:53:14 +00:00
Justin Clark-Casey (justincc) b34743e5fe Add an initial confidence-building TestAddObject() for prim counts. 2011-03-22 23:47:36 +00:00
Justin Clark-Casey (justincc) 7acade00b9 On initial setup, include estate and regions names in questions to make it clearer what they relate to. 2011-03-21 23:26:35 +00:00
Justin Clark-Casey (justincc) b821f748ac For objects loaded from an IAR, make sure the CreatorID points towards the OSP resolved ID if newer CreationData is not present.
This should resolve issues where the creator for rezzed objects was being shown as "Unknown user" where previous behaviour was to show the OSP resolved account.
This is being done by parsing the serialized objects and updating the CreatorID if no CreationData exists.  This operation might be expensive for sculpties where the sculpt texture is inlined with the object data.  Will just have to see.
This relies on the IAR streaming inventory data before asset data (as is currently the case).  Will need to introduce more stringent checks for file order on loading (much like JAR zips must start with the manifest file).
This is for IAR loading only.  Tests updated to check this behaviour.
2011-03-10 21:56:15 +00:00
Justin Clark-Casey (justincc) 9456bb77fb Upgrade nunit.framework.dll to version 2.5.9. Fix up tests appropriately.
This version removes the NUnit.Framework.SyntaxHelpers namespace, so any modules with their own tests will need to delete this using statement.
2011-03-09 23:25:24 +00:00
Melanie cea47491de Fix a few little things 2011-02-27 19:49:23 +00:00
Justin Clark-Casey (justincc) 2b04cab1ee change some log messages from info to debug 2011-02-25 02:15:06 +00:00
Justin Clark-Casey (justincc) 2f5394e70d Fix bug where avatars in other regions would not always show up on the mini-map 2011-02-24 22:33:54 +00:00
Mic Bowman 5a16fa882c Parameterizes the view distance used to compute and manage
child agents in neighbor regions. This means you can extend
the view on a simulator beyond the default 3x3 regions.

This uses a region default draw distance and should be
replaced at some point by the avatar specified draw distance.
That will require more careful, dynamic recomputation of child
agents every time the draw distance changes.

WARNING: this is experimental and has known instabilities. specifically
all regions "within site" should be running the same default draw distance
or agents will not be closed correctly.
2011-02-22 13:23:54 -08:00
Justin Clark-Casey (justincc) 9e47018cfb Remove test T020_TestMakeRootAgent() which hasn't been active for ages anyway
This test was non-viable.  Keeping inactive T021_TestCrossToNewRegion() around for now since it's still useful for reference purposes in constructing a future working test.
2011-02-19 00:14:13 +00:00
Justin Clark-Casey (justincc) 60fe3d48ee Put some CapabilitiesModule null checks in Scene
Stop tests setting up a capabilities module by default
2011-02-18 23:50:54 +00:00
Justin Clark-Casey (justincc) 8249d77991 If GridService.GetNeighbours() could not find the region then log a warning rather than causing a null reference on the normal log line
This also extends the TestChildAgentEstablished() test to actually activate the EntityTransferModule, though the test is not yet viable
2011-02-18 23:25:59 +00:00
Justin Clark-Casey (justincc) dd9efc1838 extend TestChildAgentEstablished() test slightly to put in EntityTransferModule. Not yet enabled. 2011-02-18 23:05:56 +00:00
Justin Clark-Casey (justincc) eb699df5f6 On SceneSetupHelpers, go back to calling ScenePresence.CompleteMovement() for the last stage of AddRootAgent() instead of SP.MakeRootAgent()
Going this extra step doesn't appear to cause any test failures.
This is arguably better for test purposes, though at some stage another method may arise which does just call AddRootAgent().
2011-02-18 22:49:19 +00:00
Justin Clark-Casey (justincc) 023f953f39 remove another unused test teardown method 2011-02-18 22:25:45 +00:00
Justin Clark-Casey (justincc) c155f57dbe remove unused test teardown method 2011-02-18 22:22:51 +00:00
Justin Clark-Casey (justincc) c763edf56d separate attachment tests out into their own class 2011-02-18 22:20:08 +00:00
Justin Clark-Casey (justincc) 88da253c94 Add very basic test which invokes the scene update loop once and checks the frame number.
This makes Scene.Update() match its original description of performing a single update, which also matches the semantics of SOG and ScenePresence.
2011-02-18 21:54:44 +00:00
Justin Clark-Casey (justincc) e774679f62 minor: add method doc to a few ScenePresence methods 2011-02-18 21:19:16 +00:00
Justin Clark-Casey (justincc) 4725221435 Stop the avatar sometimes pausing for more than a second on the border when region crossing.
This restores a RemoveFromPhysicalScene() call in ScenePresence.CheckForBorderCrossing() when the agent has been placed in transit.
If we don't remove the agent from the physical scene, then the method continues to be called via ScenePresence.Update()
until the handover of the client between regions is completed.  Since this handover can take more than 1000ms (due to the 1000ms
event queue polling response from the server), this results in the avatar pausing on the border for the entire handover period.
2011-02-18 20:54:00 +00:00
Marck 4f9c3c73ad Add support for new naming syntax of linked regions to osTeleportAgent and osTeleportOwner. 2011-02-17 13:47:13 +01:00
Melanie 918c12c965 Change the QUERYACCESS method to eliminate spurious access denied messages 2011-02-16 08:06:11 +00:00
BlueWall c75e916ccf Set filter to send proper rotations for root part
This allows the root prim, alone or in a set, to send it's
	rotation. This fixes unsitting the avatar on sit-offsest
	type teleports where the sit target is in the root prim of
	a linkset.
2011-02-13 07:42:53 -08:00
Diva Canto ac7bc78555 Added emergency monitoring of UDP Outgoing packets thread. Just type "emergency-monitoring on/off" 2011-02-08 12:06:14 -08:00
Diva Canto 98ea78fc77 New command: show pending-objects 2011-02-06 19:39:29 -08:00
Kevin Cozens 034327b51f Send object date to viewer in microseconds (Fixes mantis bug #3990) 2011-02-04 20:55:41 +00:00
Mic Bowman cf24069227 Change UpdateAgent (for changes in agent position) to be sent
once to each simulator rather than once to each region. This
should help with some of the delays caused by multiple outstanding
requests to a single service point.
2011-02-03 12:43:46 -08:00
Melanie 188d86998d Fix up QueryAccess to also check parcels 2011-01-28 04:09:04 +00:00
Melanie d90b0c53ec Fix bumping into sim borders and check estate bans for walking crossings 2011-01-28 02:38:14 +00:00
Melanie b0f641fa15 Make it work 2011-01-27 06:41:07 +00:00
Melanie 17801bd78b Add a TeleportFlags member to SP so we can tell how we got there. 2011-01-27 05:33:46 +00:00
Mic Bowman 240c0eaf1d Remove the RestorePresences functions (which don't seem to be doing
anything) and clean up the code in AddNewClient (so Appearance only
gets assigned once, not three times).
2011-01-26 13:33:34 -08:00
Melanie b91c99b596 Fix script data not being reset as it should be 2011-01-24 03:07:01 +00:00
Diva Canto a07375a7ae Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-01-17 17:41:06 -08:00
Diva Canto c98d1cffe2 Removed the call to sceneViewer.Reset upon MakeRoot and ChildAgentUpdate, because Reset hangs for a long time waiting for the lock. That is a problem in itself -- that long holding of the lock by some thread -- but let's just avoid it altogether. 2011-01-17 17:40:48 -08:00
Justin Clark-Casey (justincc) 3083c517a0 minor: resolve some mono compiler warnings 2011-01-18 00:29:10 +00:00
Justin Clark-Casey (justincc) c544f0d0c5 Prune some of the excess logging for client logins.
Didn't touch the appearance related stuff.
2011-01-18 00:25:24 +00:00
Diva Canto 4bcee1dfb4 Revert "DEBUG DEBUG DEBUG"
This reverts commit 59c2cd04ba.
2011-01-17 13:07:02 -08:00
Diva Canto 59c2cd04ba DEBUG DEBUG DEBUG 2011-01-17 12:35:19 -08:00
Melanie 30320077a2 Fix slam bits being lost when editing perms in prim inventory 2011-01-14 03:20:47 +00:00
Melanie 705f4e1e4b Dont' trust the viewer! Fix a permission slam error caused by trusting
the viewer too much.
2011-01-12 21:46:49 +00:00
Melanie 914e4b319e Fix direct item give permissions 2011-01-12 21:39:13 +00:00
Melanie 7cfe17b5b3 Partial permissions fix for boxed items. 2011-01-12 21:25:38 +00:00
Melanie dd154f7403 Fix god mode perms adjustment 2011-01-12 21:21:34 +00:00
Diva Canto eab0951a59 Fixes the issue of hung archives. Problem was with SceneObjectSerializer.
Also fixes a buglet in scene load xml command, where it was given the wrong argument index for filename.
2011-01-08 15:49:51 -08:00
Diva Canto a1c5de0f94 Try to fix a IAR problem reported by nebadon, where save iar seems stuck forever. 2011-01-07 12:32:47 -08:00
Diva Canto c18bcf3d8d A bit more frugal on the caller side of closing agents, now that the receiving end is async. No need for so much concurrency. 2011-01-07 10:25:49 -08:00
Diva Canto 5b43f9cac4 HG bug fix. Must wait for client's UDP contact before getting scene presence. 2011-01-06 12:47:13 -08:00
Diva Canto fbde9b1136 Note to self: try to make only 3 things at the same time. 2011-01-04 11:33:15 -08:00
Diva Canto db55859125 Guard against null Animator. 2011-01-04 11:30:08 -08:00
Melanie 5286198650 Add permissions hooks for object transfers 2011-01-03 19:42:58 +00:00
Melanie e1664b8d38 Fix child agent scoping 2011-01-03 19:42:26 +00:00
Melanie 1f4d0ad460 Fix up a prior fix (refix the fixed fix :) 2010-12-30 02:31:05 +00:00
Diva Canto d42e0c39fc Bug fix in neighbors: serverURI now always has a trailing '/'... neighbors were not getting notified. 2010-12-29 07:36:39 -08:00
Diva Canto 3eaaaa0d99 One more pass at object inventory. This time, fix SceneObjectPartInventory so that it makes sure that the file is added to Xfer's before it signals the client to come and get it. This allows the simplification of the logic of Xfer's. 2010-12-24 08:50:00 -08:00
Teravus Ovares (Dan Olivares) c108968020 * Cleanup from a commit a while ago. 2010-12-23 13:17:33 -05:00
Melanie 1c3e77b728 What is the point of using different types to express the same damn thing? 2010-12-21 22:58:52 +00:00
Melanie 19181c019a Another good catch. Update file name serial. 2010-12-21 22:56:48 +00:00
Melanie ec8d1d0131 Added a missed return. Thanks diva! 2010-12-21 22:49:38 +00:00
Melanie a31b96e1ba Fix up merge artifacts 2010-12-21 20:54:28 +00:00
Melanie 043dace118 Make prim inventories a bit more sane 2010-12-21 20:49:31 +00:00
Diva Canto c082254b9d Put the coarse location updates back to 50 frames, otherwise the dots on the mini-map come and go noticeably. Also increased the Velocity a bit; I had decreased it to 0.885; now it's 0.9. 2010-12-19 19:29:07 -08:00
Justin Clark-Casey (justincc) 3d32f05cde remove mono compiler warning: if (sop.Color != null) always returns true as sop.Color is a value type. 2010-12-17 22:40:11 +00:00
Justin Clark-Casey (justincc) 3b1c91c24b remove mono compiler warnings 2010-12-17 22:35:08 +00:00
Diva Canto ed26376ec5 Yet more things out of the main Update thread loop and into threadlets. This time, SendPrimsUpdate. Plus a few more tweaks on triggering actions from the Update loop. #LoginLag. 2010-12-14 20:15:26 -08:00
Diva Canto 74c68474e0 Another attempt at moving heavy computation away from the Update loop. #LoginLag 2010-12-14 18:44:26 -08:00
Diva Canto e3262ef5ac Commented out the UpdateLand call from the Update thread loop, because this may be causing the #LoginLag. Attachments taint the prim count. Twice. Each. 2010-12-14 17:50:37 -08:00
Justin Clark-Casey (justincc) 6b135ee371 fix mistake in last change of local.include 2010-12-15 00:14:43 +00:00
Justin Clark-Casey (justincc) 3643be1c97 Rename SceneObjectUserTests to SceneObjectDeRezTests to better reflect its contents 2010-12-14 23:46:02 +00:00
Justin Clark-Casey (justincc) 92727ad596 minor: disable debug logging for previous test 2010-12-14 23:41:36 +00:00
Justin Clark-Casey (justincc) 81bccd6d13 Start implementing a test for 'share with group' object functionality. Not yet complete.
While implementing this, a bug was fixed in scene setup helpers where module RegionLoaded() was called immediately after AddRegion() instead of waiting for all AddRegions() to complete.
Also, XmlRpcGroupsModule non-message functionality will now work without a message transfer module (as indicated in the comments but with a contradictory implementation)
2010-12-14 23:36:34 +00:00
Melanie e47cc10674 Null checking ParentGroup is not needed. It can't be null. 2010-12-14 12:07:35 +00:00
Diva Canto 4bdba0a487 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-12-13 21:36:08 -08:00
Diva Canto b41164b620 This seems to get rid of the stuck PREJUMP animation, as reported by Justin in -dev. Also in this commit, a slight adjustment to the Velocity of SP -- this makes the avie walking feel less jerky for me. Will wait reports from others. 2010-12-13 21:35:40 -08:00
Justin Clark-Casey (justincc) e08da02a0f Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-12-14 00:12:17 +00:00
Justin Clark-Casey (justincc) e62b3dba8a reinstate IAttachmentsModule.UpdateAttachmentPosition() since this is being used by a 3rd party region module and contains non-obvious attachment specific code
There are no functional changes.  UpdateAttachmentPosition() is adapted to the new approach of only saving attachment state on logout
2010-12-14 00:11:41 +00:00
Melanie 9bd7f3b03a Revamp the viewer -> banlist packet processing so fix a number of bugs.
Remove the too coarse CanEditParcel method in favor of a CanEditParcelProperties
method that takes a GroupPowers argument to specify what action is to be
taken. Also, make the method to set parcel data much more granular. Permissions
in a deeded setting should now work.
2010-12-13 20:35:56 +00:00
Melanie d6803e6448 Change some lookups in he Land Management module to make group permissions
work better. Add a generic group permissions hoot to the scene permissions
system.
2010-12-13 20:28:14 +00:00
Marck 7f0350b988 Trigger event with flag CHANGED_LINK when agent sits on objects that have not a sit target defined. This fixes Mantis #4692. 2010-12-12 20:12:34 +01:00
Diva Canto 797ca8d0e7 Fixes the nudge movements! 2010-12-11 17:06:17 -08:00
Diva Canto c42876df67 Revert "Another stab at mantis #5256"
This reverts commit ccb4f958c0.
2010-12-10 23:32:50 -08:00
Diva Canto ccb4f958c0 Another stab at mantis #5256 2010-12-10 23:16:26 -08:00
Justin Clark-Casey (justincc) a918c8df97 fix the minimap sitting avatar location bug
a sitting avatar should have it's offset position added to the scene object, not its absolute position
2010-12-10 03:46:16 +00:00
Melanie 4df1d25d23 Plumb a code path for the entity transfer module to ask a destination scene
whether or not an agent is allowed there as a root agent.
2010-12-09 01:55:32 +00:00
Justin Clark-Casey (justincc) 1fa9399ab8 change doc. trivial commit to get panda to rebuild 2010-12-08 00:41:33 +00:00
Diva Canto 72748746d5 Fixed some inconsistency with trailing /. Made debug messages consistent. Changed the stored region names of HG regions. Increased the size of regionName in DB. 2010-12-05 19:43:24 -08:00
Jonathan Freedman 45cd2e3ef9 Merge branch 'master-core' into mantis5110 2010-12-05 11:49:15 -08:00
Mic Bowman df860516bf Various bug fixes for appearance handling: more aggressive reset of textures and vparams when appearance is not cached and when wearables change. Send appearance to the viewer with initial data.
Cleaned up (and added) debugging.
2010-12-03 23:45:00 +00:00
Justin Clark-Casey (justincc) 7e72afcb3e Only force prim persistence before delete if the prim is the result of an unpersisted delink
This considerably improves delete performance for objects with large linksets
2010-12-03 00:12:59 +00:00
Diva Canto 7d24dbca3c Added some comments. Better than listening to the boring speaker... 2010-12-01 16:01:22 -08:00
Diva Canto f3835fe15c Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-11-29 09:58:20 -08:00
Diva Canto f86c438653 Preservation of creator information now also working in IARs. Cleaned up usage help. Moved Osp around, deleted unnecessary OspInventoryWrapperPlugin, added manipulation of SOP's xml representation in a generic ExternalRepresentationUtils function. 2010-11-29 08:43:33 -08:00
Diva Canto ca8d015733 Changed the parser for InventoryItem deserialization. Moved some utility functions around. 2010-11-27 11:40:54 -08:00
Melanie 63e2c3b2d6 Reformat an overzealous comment. Remove end of line marks and reference to the
Mantis solved, as that isn't needed to understand the code. Reformat the
comment for 80 col screens.
2010-11-27 01:28:02 +00:00
Micheil Merlin 6ed63487d9 llUnsit position fix 4063 (updated 11-20-2010) 2010-11-27 02:05:44 +00:00
Justin Clark-Casey (justincc) e0866faacc Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-11-27 01:27:46 +00:00
Mic Bowman 541a7660e0 Refactor appearance and avatar data sending code. Paritioning the routines into "one-to-many" and "many-to-one" makes it possible to call the right function on presence creation (both child and root) and when a child agent is promoted to root. This brings the total number of appearance sends down to one or two on login.
Cleaned up the avatar update calls in the groups code. Cleaned up
some commented and debugging code, and a few formating fixes.
2010-11-27 01:14:36 +00:00
Justin Clark-Casey (justincc) 0e311a2104 If we fail to gather asset uuids for a particular asset, log the failing asset id and type 2010-11-27 00:54:09 +00:00
Marck 2827deffe8 Trigger changed event with CHANGED_TELEPORT when teleporting to another region. 2010-11-26 22:46:48 +01:00
Diva Canto 1cbd2842d5 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-11-25 16:27:19 -08:00
Diva Canto ae4b02e115 WARNING: LOTS OF CONFIGURATION CHANGES AFFECTING PRIMARILY HG CONFIGS. Added capability to preserve creator information on HG asset transfers. Added a new HGAssetService that is intended to be the one outside the firewall. It processes and filters the assets that go out of the grid. Also fixed the normal AssetService to do special things for the main instance (console commands, etc). Moved HGInventoryService to OpenSim.Services.HypergridService. Changed the way the login service gets the ServiceURL configs. 2010-11-25 11:14:16 -08:00
Melanie 57c4def254 Change all restarting to use the restart module. Remove hardcoded behavior 2010-11-25 03:16:52 +00:00
Jonathan Freedman bc51dfc45e Merge branch 'master-core' into mantis5110 2010-11-23 22:27:54 -08:00
Justin Clark-Casey (justincc) 8d79a39d5b Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-11-23 04:27:06 +00:00
Justin Clark-Casey (justincc) bbc291dfdf adapt tests to use DeRezObjects() since DeRezObject() has recently disappeared 2010-11-22 23:07:30 +00:00
Justin Clark-Casey (justincc) 34b13a4765 add basic tests to check that under default permissions module owner can delete objects and that non-owners (who are also not administrators, etc.) cannot 2010-11-22 22:54:13 +00:00
Marck e1c72cedb3 Let CHANGED_SCALE also trigger when editing prims and linksets with the viewer's edit tools.
This event used to trigger only when the scale was changed with a script.
2010-11-22 19:38:44 +01:00
Marck d63965cf94 Let CHANGED_SHAPE trigger. This fixes Mantis #1844. 2010-11-22 19:38:44 +01:00
Jonathan Freedman b7f5e82843 Merge branch 'master-core' into mantis5110 2010-11-21 20:01:48 -08:00
Jonathan Freedman 562147475c Merge https://github.com/opensim/opensim into mantis5110
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2010-11-21 19:51:23 -08:00
Diva Canto c617d658dd Added creator info across the board -- TaskInventoryItems and InventoryItems themselves. Tested. Seems to be working, main tests pass. Nothing done for IARs or HG transfers yet -- this only works for OARs for the time being.
New migration in inventory table in order to make CreatorID varchar(255).
2010-11-21 17:19:24 -08:00
Diva Canto 6a9ae9e7cb Global creator information working on MySQL DB and on load/save OARs. Creator name properly shown on the viewer as first.last @authority.
New option added to save oar -profile=url. Migration on RegionStore making CreatorID be 255 chars.
Moved Handling of user UUID -> name requests to a new module UserManagement/UserManagementModule.
2010-11-21 13:16:52 -08:00
Melanie 390c3a3b6f Prevent leftover attachments from clogging up the pipes 2010-11-16 22:18:35 +00:00
Melanie 7bb005b0d1 Change the way attachments are persisted. Editing a worn attachment will now
save properly, as will the results of a resizer script working. Attachment
positions are no longer saved on each move, but instead are saved once on
logout. Attachment script states are saved as part of the attachment now
when detaching.
2010-11-16 21:01:56 +00:00
Melanie 98ba079e95 Diva needs a spanking! Serializing OldItemID breaks script state persistence in agent inventory. 2010-11-16 01:35:16 +00:00
Melanie bfc128529c Prevent teleporting to a region when the egent is banned in all parcels 2010-11-10 16:20:19 +00:00
Melanie 22144eb8f7 Fix parcel bans to work only on the avatars they're supposed to work on instead of pushing all avatars, even the ones that are allowed. 2010-11-09 22:15:59 +00:00
Jeff Ames ae9c4a4d11 Formatting cleanup. 2010-11-08 07:48:35 -05:00
Melanie 798abd1508 Reinstate a lost fix 2010-11-08 03:06:58 +00:00
Melanie 6056ae8d88 Fix merge artefacts 2010-11-08 02:58:33 +00:00
Melanie 18b27408d6 Prevent plants from being treated like dropped attachments and removed
from the sim.
2010-11-08 02:39:06 +00:00
Melanie 4f6dd8bda3 Call the cleanup after saving attachment states, so that the attachments
don't get killed before they can be saved
2010-11-08 02:38:15 +00:00
Melanie 2f58d56137 Call the Cleanup when an agent logs out, when an agent leaves and just
before an agent logs in directly. Intentionally not calling this from MakeRoot
as that would mess up attachment transfer in teleport
2010-11-08 02:37:28 +00:00
Melanie Thielker 2317b6767b Add a method to delete left over / dropped attachments 2010-11-08 02:36:51 +00:00
Jonathan Freedman 4f40374464 Merge git://github.com/opensim/opensim into mantis5110 2010-11-05 19:10:02 -07:00
Melanie 644eb9fd7f Fix playing sound from HUDs 2010-11-05 13:45:28 +00:00
Melanie 57eabe9d46 Actually calculate the height before setting it, this isn't done automatically
on incoming transfers in all cases.
2010-11-03 00:47:22 +00:00
Melanie 7d551e27ca Trying to prevent a wrong physical actor size 2010-11-03 00:01:47 +00:00
Melanie d555c373d8 Fix avatar height management 2010-11-02 23:39:45 +00:00
Melanie 78a0ed3ff9 Fix sitting and standing up 2010-11-02 21:28:24 +00:00
Diva Canto 9f5ab3b965 Old deserialization can't deal with commas in flag fields. Making use of -version option on save oar command. Bumped archives version to 0.5; version < 0.5 generates flag fields without commas. Everything else is identical. 2010-11-02 12:05:24 -07:00
Jonathan Freedman 95a0ea78f9 Merge branch 'master' into mantis5110 2010-10-30 18:28:07 -04:00
Melanie 623cee1ffc Move physics actor creation to after SetHeight to try and prevent
bowlegginess. Didn't work but is better this way anyway.
2010-10-30 19:17:52 +01:00
Jonathan Freedman 9e7d3e0f25 Merge branch 'master' into mantis5110 2010-10-29 23:59:16 -04:00
Jonathan Freedman c8d65c359f Merge branch 'master' into mantis5110
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2010-10-29 23:58:14 -04:00
Jonathan Freedman d219317074 Merge branch 'master' into mantis5110
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2010-10-29 23:12:51 -04:00
Justin Clark-Casey (justincc) 09705514ff tweak a few more scene presence logging messages for consistency 2010-10-29 23:52:25 +01:00
Justin Clark-Casey (justincc) e66ec432af Rationalize the logging messages from the merged appearance branch, commenting out most of them as per Mic 2010-10-29 23:45:10 +01:00
Justin Clark-Casey (justincc) abcde41c0d Merge branch 'justincc-dev' 2010-10-29 23:15:35 +01:00
Justin Clark-Casey (justincc) 25e19ba7e9 add timing report to CompleteScenePresence for diagnostic purposes 2010-10-29 23:03:11 +01:00
Melanie 934e536738 Merge commit 'cmickeyb/dev-appearance' 2010-10-29 21:06:46 +01:00
Master ScienceSim 49fa7e91b9 Clean up some cruft from the last commit. Re-add the initial update
send in the scene presence constructor... need to figure this out
later.
2010-10-29 13:45:59 -07:00
Master ScienceSim f5c9a56c8b Bunch of fixes that reduce the number of times appearance
and avatar data are sent. And the number of times they
are stored.
2010-10-29 13:43:35 -07:00
Melanie 05d2302c62 Merge branch 'dev-appearance' 2010-10-29 20:24:14 +01:00
Master ScienceSim f2c1d0e34f Merge branch 'opensim-master' into dev-appearance 2010-10-28 09:09:42 -07:00
Melanie 1fcac7203d Prevent nullrefs in scene object deletion. Mantis #5156 2010-10-27 20:47:27 +01:00
dahlia a4e95c0717 Merge branch 'master' of ssh://MyConnection01/var/git/opensim 2010-10-26 21:20:18 -07:00
dahlia 5968d343bb Overload Scene.NewUserConnection() to facilitate NPCs and other region specific applications 2010-10-26 21:19:33 -07:00
Jeff Ames a331fd4e24 Formatting cleanup. 2010-10-27 00:01:03 -04:00
Jonathan Freedman 07db35697b Merge branch 'master' into mantis5110 2010-10-24 15:01:01 -04:00
Diva Canto 627d1a42fe Added inner exception handling in Shape deserialization processing, so that the whole Shape processing returns a valid Shape object. 2010-10-23 20:39:41 -07:00
Justin Clark-Casey (justincc) 80f90229e5 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-10-22 23:56:58 +01:00
Justin Clark-Casey (justincc) fe8d3d5a2b Revert "Merge remote branch 'otakup0pe/mantis5110'"
This reverts commit 21187f459e, reversing
changes made to 8f34e46d74.
2010-10-22 23:52:07 +01:00
Jonathan Freedman 38e76d71ac Merge branch 'hg16' into mantis5110 2010-10-22 18:34:50 -04:00
Justin Clark-Casey (justincc) e06acae965 Allow region modules to know which agents actually receive chat 2010-10-22 18:33:19 -04:00
Melanie 004b395d12 Make SImStatsReporter pick ObjectCapacity striaght out of region info 2010-10-22 18:27:49 -04:00
Melanie 700f4ddea4 Change some exception to use ToString(). e.Message is not sufficient to fix
errors. Please don't use e.Message, devs NEED to see the dumps!
2010-10-22 22:55:07 +01:00
Jonathan Freedman d4144bedb8 * change the data exchanged within hypergrid transactions 2010-10-21 23:22:15 -04:00
Master ScienceSim 267f18925d First attempt to get multiple attachments working to support viewer2.
The attachment code appears to work correctly for 1.23 viewers so, in
spite of some big changes in the internal representation, there don't
appear to be regressions. That being said, I still can't get a viewer2
avatar to show correctly.
2010-10-21 16:48:58 -07:00
Melanie 08e14d653e Merge branch 'dev-appearance' of git://github.com/cmickeyb/opensim into dev-appearance 2010-10-21 17:09:42 +01:00
Melanie bb78f1c05a Make SImStatsReporter pick ObjectCapacity striaght out of region info 2010-10-21 15:36:32 +01:00
Jonathan Freedman 017b83d0a3 * remove some spurious debug info
* The last 4 commits are a patch from otakup0pe that's supposed to make URLs better somehow in an effort to make it easier to do hypergrid (I think)..    But as it seems that I'm the only one who was able to apply the patch.. and I looked it over and it doesn't look like it breaks anything via the diffs..     I'll sign off on it.

Signed-off-by: Teravus Ovares (Dan Olivares) <teravus@gmail.com>
2010-10-20 22:36:29 -04:00
Master ScienceSim b1c8d05888 Major refactoring of appearance handling.
AvatarService -- add two new methods, GetAppearance and SetAppearance
to get around the lossy encoding in AvatarData. Preseve the old
functions to avoid changing the behavior for ROBUST services.

AvatarAppearance -- major refactor, moved the various encoding
methods used by AgentCircuitData, ClientAgentUpdate and
ScenePresence into one location. Changed initialization.

AvatarAttachments -- added a class specifically to handle
attachments in preparation for additional functionality
that will be needed for viewer 2.

AvatarFactory -- removed a number of unused or methods duplicated
in other locations. Moved in all appearance event handling from
ScenePresence. Required a change to IClientAPI that propogated
throughout all the IClientAPI implementations.
2010-10-20 16:17:54 -07:00
Jonathan Freedman 94684a2251 * remove some spurious debug info 2010-10-20 02:36:59 -04:00
Diva Canto 8731c2be11 It looks like Vector3s also got written down in lower case at some point in time. Added code to account for that.
17:45:59 - [SceneObjectSerializer]: exception while parsing SitTargetPosition: System.Xml.XmlException: Expecting X tag from namespace , got x and  instead  Line 1, position 2838.
2010-10-19 15:16:29 -07:00
Diva Canto 8acac3d07f Another take related to the previous commit. 2010-10-19 15:07:15 -07:00
Diva Canto 3b2d9a9939 Added code to quaternion deserialization to try to cope with an exception seen in Wright Plaza related to SitTargetOrientation.
17:23:05 - [SceneObjectSerializer]: exception while parsing SitTargetOrientation: System.Xml.XmlException: Expecting X tag from namespace , got w and  instead  Line 1, position 30064.
2010-10-19 14:37:03 -07:00
Diva Canto 684449f783 Added TextureAnimation and ParticleSystem to serialization. 2010-10-19 00:04:02 -07:00
Melanie 43a4b7b735 COmmented the wrong line instead, now I commented them all to be on the safe side 2010-10-19 01:23:25 +01:00
Melanie 5b29b975ee Comment a spammy debug message in the serializer 2010-10-19 00:51:04 +01:00
Diva Canto 7038f2b406 Deleted all [XmlIgnore] from SOP, since those are meaningless now. 2010-10-17 10:41:38 -07:00
Diva Canto 22eff055d4 .NET automagical serialization of SOPs replaced by manual serialization across the board. 2010-10-17 10:35:38 -07:00
Diva Canto 1499607215 Made OARs use the new serialization procedure. (TPs/crossings still on the old one) Added an options argument down the pipeline. For the time being it takes --old-guids as an option to produce <Guid> instead of <UUID>. 2010-10-15 17:27:19 -07:00
Diva Canto 41ce392d9b Added manual xml2 serialization. Rewired only save xml2, not oars yet. Seems to be generating xml's that are successfully parsed. Needs more testing. 2010-10-14 09:05:46 -07:00
Diva Canto 45e0cdfcad Added SOP.MediaUrl and Shape.Media to the deserialization 2010-10-13 15:44:25 -07:00
Diva Canto d890390ecf Comment a debug message so that it doesn't spew the console upon encountering unknown xml elements. 2010-10-13 10:38:34 -07:00
Diva Canto 54a3b8e079 New SOG/SOP parser using XmlTextReader + delegates dictionary. Active for load oar and load xml2, but not for packing objects on crossings/TPs yet. 2010-10-13 08:16:41 -07:00
Melanie f2febb89fc Change the part for sound playback to be the root part / object UUID instead
of the child prim because using the child prim plain doesn't work.
2010-10-10 22:07:36 +01:00
Melanie 4a0911bdbd Guard against locking a nullref to avoid build break 2010-10-08 19:19:07 +01:00
Melanie 5dcbbb726a Change the order of actions to address a possible nullref 2010-10-08 18:40:13 +01:00
Melanie 9a5d0984a5 Fix autoreturn to not return zero objects 2010-10-07 02:16:36 +01:00
Melanie abfede7819 Plumb the path for multiple object deletes 2010-10-06 20:00:51 +01:00
Jeff Ames bc9f793a92 Formatting cleanup. 2010-10-04 21:28:17 -04:00
Melanie 511751a733 I really have to say it again and again: e.Message is NOT enough data for
troubleshooting. It MUST be combined with e.StackTrace, or e.ToString() must
be used.
Fix one more instance of that cr.p
2010-10-03 22:36:27 +01:00
Melanie 29646bcf67 Fix an inventory fetch issue 2010-09-30 02:52:35 +01:00
Melanie 8e547d3491 Prevent setting arbitrary groups on your objects. 2010-09-27 02:11:55 +01:00
Melanie c2a4bdb2fe Fix build break 2010-09-27 01:40:29 +01:00
Melanie aaa4cb64a4 if you can't edit a prim's inventory, you don't need to see the asset ids.
Prevents stealing IDs of animations, sounds and textures from prim
inventories. Prevents copybot from gathering the wearable UUIDs needed for
pirating things from vendors.
2010-09-27 00:34:30 +01:00
Melanie 1f7d68e555 Restrict inventory items added in a transaction to folder belonging
to the connected client.
2010-09-27 00:30:26 +01:00
Justin Clark-Casey (justincc) 6325fa515d Add UUID to physics prim name parameter so that diagnostic messages can be made more useful.
If a separate UUID parameter is better for the future then this can be added later on.
2010-09-25 00:51:40 +01:00
Justin Clark-Casey (justincc) b366ad5012 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-09-25 00:00:00 +01:00
Justin Clark-Casey (justincc) 5bcf9ae2f9 If the uuid gatherer fails to find the asset containing gesture metadata, then simply return rather than generating an exception
This matches existing behaviour, though better diagnostics for missing assets may be good later on.
This addresses http://opensimulator.org/mantis/view.php?id=4977
2010-09-24 23:58:37 +01:00
Melanie 2b8c99c2fb Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2010-09-21 04:02:50 +01:00
Melanie 10a37f5be4 Refactor script create permission into the perms module 2010-09-21 04:02:28 +01:00
Justin Clark-Casey (justincc) a85779e477 If the uuid of a SceneObjectGroup (RootPart) is changed before adding to the scene, remove the old uuid reference from m_parts as well as adding the new one.
The separate remove and set operations is SOG.set_UUID() are both locked under m_parts.SyncRoot since they are logically atomic (though this isn't such an issue if the SOG isn't part of a scene)
Added unit test for this behaviour.
Also changed the second m_parts.AddOrReplace() to m_parts.Add().  As the old reference is now removed we never end up replacing an identical uuid.  And if we replace a uuid that's already there (from a child part) then this is an error.
2010-09-21 00:58:54 +01:00
John Hurliman b49cb3355f Fixed a regression in SOG.Copy() 2010-09-16 17:57:00 -07:00
John Hurliman 5321e0e69f Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-09-16 17:31:24 -07:00
John Hurliman 860b2a502f Changed SceneObjectGroup to store parts with the fast and thread-safe MapAndArray collection 2010-09-16 17:30:46 -07:00
Justin Clark-Casey (justincc) e3f1533705 Fix build break by replacing Items.LockItemsForWrite() with lock (Items) {} 2010-09-17 01:21:28 +01:00
root 670357367e Removing debug 2010-09-16 23:32:18 +01:00
root 1b2edfe75f JustinCC is evil. f7b28dd3 broke script persistence. This fixes it. 2010-09-16 23:19:46 +01:00
Justin Clark-Casey (justincc) 39d27fc879 rename SceneObjectGroup.DeleteGroup() to DeleteGroupFromScene() to improve code readability 2010-09-15 22:29:58 +01:00
Justin Clark-Casey (justincc) 16f296f489 Instead of locking SOG.Children when a group is being removed from the scene, iterate over an unlocked list instead
Previously, deadlock was possible because deleting a group took a SOG.Children lock then an m_entityUpdates.SyncRoot lock in LLClientView
At the same time, a thread starting from LLClientView.ProcessEntityUpdates() could take an m_entityUpdates.SyncRoot lock then later attempt to take a SOG.Children lock in PermissionsModule.GenerateClientFlags() and later on
Taking a children list in SOG appears to be a better solution than changing PermissionsModule to not relook up the prim.  Going the permission modules root would require that all downstream modules not take a SOG.Children lock either
2010-09-15 21:51:13 +01:00
Justin Clark-Casey (justincc) 36f81c66e5 Comment out SOG storing debug log message
This can get very spammy with regularly changing objects.  Please uncomment if required.
2010-09-14 00:05:38 +01:00
Justin Clark-Casey (justincc) dd803b4f0c minor: Add comments which explain what's going on wrt avatar movements at various points in the main scene loop and associated methods 2010-09-13 21:53:25 +01:00
Justin Clark-Casey (justincc) 7ae9266186 Remove SceneGraph.DetachObject() which was accidentally left around after being migrated to AttachmentsModule 2010-09-13 21:20:31 +01:00
Justin Clark-Casey (justincc) ff098ae110 minor: Clean up log messages generated when an item is attached 2010-09-13 20:44:32 +01:00
John Hurliman c03b24cbfd Merged 2010-09-12 14:21:51 -07:00
John Hurliman 0db1ed0b5a * Added ISimulationDataService and IEstateDataService
* Removed StorageManager
* CONFIG CHANGE: There are no more database settings in OpenSim.ini. Check the config-include configuration files for region store and estate store database settings
2010-09-12 14:20:26 -07:00
Jeff Ames f1f0bc23f4 Formatting cleanup. 2010-09-12 13:43:49 -04:00
Jeff Ames 20cd1da6bf Add copyright headers. 2010-09-12 12:54:31 -04:00
John Hurliman 007912d6f4 Shuffling fields and properties around in Scene to make Scene.cs more readable 2010-09-11 23:41:48 -07:00
John Hurliman 109b517583 Fixed the naming mess around data connectors for simulation data 2010-09-11 20:43:06 -07:00
randomhuman 30306a775a Made it impossible to create a user with names containing spaces and prevented passwords from being echoed after enter is pressed. 2010-09-10 23:19:18 +01:00
John Hurliman b597a295c4 Second pass at cleaning up thread safety in EntityManager and SceneGraph 2010-09-10 12:41:36 -07:00
John Hurliman dd277a0d02 First pass at cleaning up thread safety in EntityManager and SceneGraph 2010-09-10 12:04:12 -07:00
Justin Clark-Casey (justincc) b8d14fcc4a Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-09-08 01:05:56 +01:00
John Hurliman 9be1c0ff44 * Cache null account responses in the SimianUserAccountServiceConnector to avoid repeated requests for missing avatar IDs
* Updated to OpenMetaverse r3442 to fix a timezone issue with ExpiringCache
2010-09-07 14:41:13 -07:00
Melanie 8fda08d858 Make sure unlinked child prims get persisted 2010-09-07 11:48:28 +01:00
Justin Clark-Casey (justincc) f7b28dd321 If a scene object part UUID is changed (only possible when not in a scene), then adjust the inventory items to point to the new uuid as well 2010-09-07 03:41:29 +01:00
Justin Clark-Casey (justincc) 84ad9e4d4e minor: comment out some excessive test logging 2010-09-07 02:05:44 +01:00
Melanie 99bfb0d2a2 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2010-09-07 01:45:08 +01:00
Justin Clark-Casey (justincc) 3d033520fa Fix deletion persistence when freshly delinked prims are removed
Previously, Scene.Inventory.DeRezObjects() forced the persistence of prims before deletion.
This is necessary so that freshly delinked prims can be deleted (otherwise they remain as parts of their old group and reappear on server restart).
However, DeRezObjects() deleted to user inventory, which is not required by llDie() or direct region module unlink and deletion.
Therefore, forced persistence has been pushed down into Scene.UnlinkSceneObject() to be more general, this is still on the DeRezObjects() path.

Uncommented TestDelinkPersistence() since this now passes.
Tests required considerable elaboration of MockRegionDataPlugin to reflect underlying storing of parts.
2010-09-07 01:43:20 +01:00
Justin Clark-Casey (justincc) 11f4a65f42 Fix deletion persistence when freshly delinked prims are removed
Previously, Scene.Inventory.DeRezObjects() forced the persistence of prims before deletion.
This is necessary so that freshly delinked prims can be deleted (otherwise they remain as parts of their old group and reappear on server restart).
However, DeRezObjects() deleted to user inventory, which is required by llDie() or direct region module unlink and deletion.
Therefore, forced persistence has been pushed down into Scene.UnlinkSceneObject() to be more general, this is still on the DeRezObjects() path.

Uncommented TestDelinkPersistence() since this now passes.
Tests required considerable elaboration of MockRegionDataPlugin to reflect underlying storing of parts.
2010-09-07 01:12:06 +01:00
Justin Clark-Casey (justincc) e55f6d47e9 Add test that checks correct persistence when an unlink is quickly followed by deletion of a linked part
This test is temporarily not running since it currently fails due to a bug in this area
2010-09-06 23:28:52 +01:00
Justin Clark-Casey (justincc) ab875b32c1 Make console backup command do a forced backup rather than non-forced
Remove no-arg backup method for simplicity as it only make sense to call non-forced backup internally
2010-09-06 23:12:03 +01:00
Justin Clark-Casey (justincc) 537fefa3f2 extend TestNewSceneObjectLinkPersistence() to check for presence of non-root linked prim 2010-09-06 23:06:23 +01:00
Justin Clark-Casey (justincc) 953b7f4917 Add test to check persistence of newly added pre-linked objects
Added a MockRegionDataPlugin to do in-memory persistence for tests since adding this to OpenSim.Data.Null.NullDataStore doesn't seem appropriate
NullDataStore can do nothing because OpenSim only ever retrieve region objects from the database on startup.  Adding an in-memory store here would be unecessary overhead.
2010-09-06 23:00:24 +01:00
Melanie Thielker 0246edc2ea Reflect the ParcelPropertiesUpdateRequest into Scene.EventManager, because
modules need to see it (Search!) even if it comes in via CAPS
2010-09-06 04:09:51 +01:00
Diva Canto 68f107b27e Logout the presence if client IP verification fails. 2010-09-04 18:46:27 -07:00
Justin Clark-Casey (justincc) 1e8e98a07f Move code that allows llGiveInvetory() to move item into appropriate system folder up from connectors into Scene.Inventory.cs
This fixes the problem for all architectures (hg as well as local and grid) and means we don't have to dupe code between connectors.
Not ideal in that it becomes non-modular, but methods in Scene.Inventory.cs should eventually be modularized anyway.
2010-09-04 01:36:26 +01:00
Justin Clark-Casey (justincc) 107052b23d Create Scene.Inventory.cs.AddInventoryItem(InventoryItemBase item)
The agentID in AddInventoryItem(UUID agentID, InventoryItemBase item) is redundant since it's contained in item.Owner, and it doesn't make sense for agentID != item.Owner, hence the method is deprecated.
2010-09-04 00:09:53 +01:00
Melanie Thielker 17a26c3701 Fix an issue with rezzing scripted objects. 2010-09-03 03:27:26 +01:00
Melanie Thielker 1c8bc9b7b6 Remove commented code and the comment, as the change has proven out 2010-09-02 21:02:09 +01:00
Melanie Thielker 7720419fc7 Experimentally comment the sending of unbaked avatars 2010-09-02 20:17:49 +01:00
Justin Clark-Casey (justincc) 6cbf66827b refactor: move SOG.AttachToAgent() into AttachmentsModule 2010-09-01 01:11:52 +01:00
Justin Clark-Casey (justincc) c947a67b23 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-09-01 00:17:23 +01:00
Melanie Thielker c47de94263 Adjust the "Magic numbers" we use because we can't reference the actual
script state enum to reflect recent changes.
2010-08-31 22:36:46 +01:00
Justin Clark-Casey (justincc) 9c1c378aa1 Add ScenePresence.GetAttachments(uint attachmentPoint) 2010-08-31 22:16:23 +01:00
Justin Clark-Casey (justincc) 1c0b4457cd Improve liveness by operating on list copies of SOG.Children where appropriate 2010-08-28 00:40:33 +01:00
Justin Clark-Casey (justincc) 7f5501d3ab minor: remove mono compiler warning 2010-08-26 22:13:31 +01:00
Justin Clark-Casey (justincc) 2b0f924557 refactor: Move Scene.Inventory.UpdateKnownItem() into Attachments module since this appears to relate solely to attachments 2010-08-26 22:09:52 +01:00
Justin Clark-Casey (justincc) f3f4428700 refactor: break out attachment position change code in Scene.UpdatePrimPosition() and move into AttachmentsModule
This allows region modules to change attachment positions.
2010-08-26 21:50:19 +01:00
Justin Clark-Casey (justincc) df702417dc Remove mono compiler warnings 2010-08-26 16:27:41 +01:00
Justin Clark-Casey (justincc) a6869fbc3e Use SOP.ParentGroup in Prioritizer instead of Scene.GetGroupByPrim()
By the time a scheduled update is triggered, a sog may have been removed from the scene.  This change prevents NullReferenceExceptions in these situations.
2010-08-26 15:33:42 +01:00
Justin Clark-Casey (justincc) 87a6554d4b Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
Resolve merge conflicts

Conflicts:
	OpenSim/Region/Framework/Scenes/SceneGraph.cs
2010-08-26 00:35:03 +01:00
Justin Clark-Casey (justincc) 166ab59420 replace m_parts.Count linknum with 0 in CopyRootPart since m_parts.Count is always 0 (and any other number would cause an error anyway) 2010-08-26 00:15:26 +01:00
Justin Clark-Casey (justincc) 8031f8ec09 Improve consistency of locking for SOG.m_parts in order to avoid race conditions in linking and unlinking 2010-08-26 00:08:53 +01:00
Melanie Thielker 604423d52b Make scene object directories more robust and prevent deleted SOP's from
sticking around
2010-08-25 23:19:30 +01:00
Justin Clark-Casey (justincc) 24d06b12c2 If setting SOG.UUID, update the SOG.m_parts index as well as the root part UUID
Being able to change a SOG.UUID is useful for region modules that want to supply their own UUID, before the object is rezzed
2010-08-25 23:05:54 +01:00
Justin Clark-Casey (justincc) 46c6c35d48 refactor: Push item retrieval and fixing part of Scene.RezObject() down into SceneObjectPartInventory 2010-08-25 22:46:49 +01:00
Justin Clark-Casey (justincc) d69e992665 Split out actual scene object insertion code from Scene.Inventory.RezObject and move into SceneGraph.AddNewSceneObject()
The new SceneGraph method is more consumable by region modules that want to extract objects from inventory and add them to the scene in separate stages.
This change also reduces the number of redundant client updates scheduled when an object is rezzed directly by a script or region module
This code does not touch direct rez by a user
2010-08-24 23:25:19 +01:00
Justin Clark-Casey (justincc) 07d5a0779a refactor: make RezObject() more readable 2010-08-24 20:53:25 +01:00
Justin Clark-Casey (justincc) 46d06b6c4c add test to check move of task item to user inventory when a target folder is explicitly given 2010-08-24 17:10:52 +01:00
Justin Clark-Casey (justincc) 8bb073d99a minor: stop test using obsolete property 2010-08-24 17:06:04 +01:00
Justin Clark-Casey (justincc) 35f719ae2f refactor TestMoveTaskInventoryItemNoParent() 2010-08-24 17:04:54 +01:00
Justin Clark-Casey (justincc) 289c21099c Add automated test at the opensim 'api' level to check that a given item goes to the correct directory
Also removes some mono compiler warnings
2010-08-24 16:50:31 +01:00
Justin Clark-Casey (justincc) 1d01c91095 minor: some doc for the MoveTaskInventoryItem method in Scene.Inventory.cs 2010-08-23 23:21:44 +01:00
Justin Clark-Casey (justincc) 74e5fe5aa9 Remove various warnings and improve logging messages. No functional changes. 2010-08-23 22:24:23 +01:00
Diva Canto f347d25675 Unit test breakage fix. 2010-08-20 11:09:02 -07:00
Diva Canto 6f83b0ee46 Cleaned up a few more things related to incoming agents. 2010-08-20 09:02:05 -07:00
Melanie 82abaadd55 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2010-08-20 08:36:54 +01:00
Melanie ae554a48d0 Add some maptile options, change maptile generation from OpenSimBase to Scene
to make it more configurable.
2010-08-20 08:36:23 +01:00
Diva Canto a39ea07158 Finished implementing ViaLogin vs ViaHGLogin. Removed lookup on myipaddress.com. Also removed client IP verification upon UDP connection that had been left there -- we can't do that in general. 2010-08-19 19:54:40 -07:00
Justin Clark-Casey (justincc) 85f448642b minor: Correct string format in "Can't find linkset root prim" message 2010-08-19 00:54:09 +01:00
randomhuman 8eeb3f2fd2 Updated the create_region command in the RemoteAdmin plugin to properly support estates without seeking further input on the console. 2010-08-13 23:29:01 +01:00
Justin Clark-Casey (justincc) ab6dc47818 refactor: move binary statistics logging from scene into separate region module 2010-08-13 23:15:11 +01:00
Justin Clark-Casey (justincc) e89f0b3f71 refactor: move Scene.PerformObjectBuy into BuySellModule 2010-08-13 22:29:42 +01:00
Justin Clark-Casey (justincc) b30635a454 Establish new Objects/BuySellModule
Move Scene.ObjectSaleInfo() to this
2010-08-13 21:39:43 +01:00
Justin Clark-Casey (justincc) 5d20f04e08 refactor: move Scene.TerrainUnAcked() handling into TerrainModule 2010-08-13 21:18:26 +01:00
Justin Clark-Casey (justincc) fd23f270c6 refactor: remove Scene.SetRootAgentScene() in favour of existing event with same name 2010-08-13 21:01:10 +01:00
Justin Clark-Casey (justincc) 5f5c65e4ba refactor: move more map tile generation code from scene to IWorldMapModule 2010-08-13 20:34:46 +01:00
Justin Clark-Casey (justincc) 39a748b47a refactor: Use SOP.Flags rather than SOP.ObjectFlags 2010-08-13 20:23:53 +01:00
Diva Canto c98c6a2930 File wants to be committed 2010-08-11 20:38:10 -07:00
Marck 4f62f00ca0 Changing prim color generates event CHANGED_COLOR.
Signed-off-by: Melanie <melanie@t-data.com>
2010-08-10 19:38:39 +01:00
Mikko Pallari 3f942a4f74 Removed abstract SetText method from EntityBase to make cleaner API.
Signed-off-by: Melanie <melanie@t-data.com>
2010-08-10 19:37:15 +01:00
Melanie 75f92faeb4 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2010-08-10 19:34:57 +01:00
Justin Clark-Casey (justincc) 2a1c11fda9 On shift-copy of an object, set up a new physics actor (as appropriate) for every copied prim, not just the root
This addresses http://opensimulator.org/mantis/view.php?id=4295
2010-08-10 20:15:44 +01:00
Marck 6147efdad9 Avoid truncation of error message during region creation.
Signed-off-by: Melanie <melanie@t-data.com>
2010-08-10 19:34:09 +01:00
Justin Clark-Casey (justincc) 0a81038dd5 Reduce number of paths in SOP code by setting flags via Flags property rather than _flags
Both ObjectFlags and Flags are effectively exactly the same property, except that ObjectFlags is uint and Flags is PrimFlags
Both reference the PrimFlags _flags underneath, so you couldn't set a non PrimFlags uint anyway.
Deprecated ObjectFlags in favour of Flags.
2010-08-10 17:26:31 +01:00
Justin Clark-Casey (justincc) 7203feb83c Extend DuplicateObject() test to check flags on the duplicated object 2010-08-10 16:50:36 +01:00
Justin Clark-Casey (justincc) 85fc2dfe3c extend TestDuplicateObject() to a two prim object 2010-08-10 16:16:57 +01:00
Justin Clark-Casey (justincc) 903cfa8c7e minor: Remove overly verbose schedule full update log message for attachments 2010-08-07 22:28:42 +01:00
Justin Clark-Casey (justincc) 4e2caab756 Add new SceneGraphTests class. Add simple TestDuplicateObject() 2010-08-07 01:06:47 +01:00
Justin Clark-Casey (justincc) 8d520f4525 Remove old test classes that don't actually test anything not done elsewhere
Also comment out log4net line in InventoryArchiverTests
2010-08-07 00:50:01 +01:00
Justin Clark-Casey (justincc) 6c8c8d669b minor: a few miscellaneous comments 2010-08-07 00:45:04 +01:00
Justin Clark-Casey (justincc) 1270727c96 Merge branch 'moap' 2010-08-06 18:29:30 +01:00
Melanie 120f3a18f2 Correct some script constants. 2010-08-06 15:11:18 +01:00
Diva Canto 847008ee07 Addresses http://opensimulator.org/mantis/view.php?id=4919 2010-08-05 09:43:19 -07:00
Melanie 1869572297 Prevent setting the hovertext from firing changed_color 2010-08-05 08:19:46 +01:00
Diva Canto f3fa10fa15 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2010-07-30 14:04:29 -07:00
Diva Canto 8ab7d80b09 Changed the way HG client verification is done: now transforming local and LAN client IPs into external IPs. This addresses some issues related to running both the user agents service and the viewer in the same machine/LAN, which then presents a problem when the user agent goes to an external network. 2010-07-30 14:04:13 -07:00
Justin Clark-Casey (justincc) f84dbafb0c remove gods event subscription to gods module from scene 2010-07-30 21:58:24 +01:00
Justin Clark-Casey (justincc) 63f3a16b72 remove empty, unused and uncalled UnsubscribeToClientEvents() 2010-07-30 21:44:50 +01:00
Justin Clark-Casey (justincc) 424b4b2b86 move attachment subscription events into AttachmentsModule from scene.
restored to some heavy casting in order to preserve RegionCombinerModule semantics, pending better events.
2010-07-30 21:41:44 +01:00
Justin Clark-Casey (justincc) 4d83b2d8a6 remove unused BasicQuadTreeNode 2010-07-30 21:06:45 +01:00
Melanie Thielker 696b6c727f Allow gods and estate managers/owners to be unaffected by parcel bans 2010-07-29 16:20:40 +01:00
Justin Clark-Casey (justincc) f067f733ea add userExposed parameter to part copy event 2010-07-28 19:38:20 +01:00
Justin Clark-Casey (justincc) 0f15ccb2cf relocate moap specific cloning code to MoapModule 2010-07-28 19:23:30 +01:00
Justin Clark-Casey (justincc) 5aa56b1274 Fix problem where changes to media textures for prims duplicated by shify copy would change both prims until server restart
I also found out that you can crash the current viewer by giving it more media entrys than it's expecting
2010-07-28 18:55:29 +01:00
Justin Clark-Casey (justincc) b51b2efdc8 Add EventManager.OnSceneObjectPreSave() for future use. This is triggered immediately before a copy of the group is persisted to storage 2010-07-26 23:34:22 +01:00
Justin Clark-Casey (justincc) 586ae0f6a0 Add EventManager.OnSceneObjectLoaded() for future use. This is fired immediately after a scene object is loaded from storage. 2010-07-26 23:34:22 +01:00
Justin Clark-Casey (justincc) ee6cd884c9 implement serverside checks for media texture navigation in order to stop naughty clients 2010-07-26 23:34:21 +01:00
Justin Clark-Casey (justincc) 51b208e96c implement prim media control permissions serverside in order to stop bad clients 2010-07-26 23:34:20 +01:00
Justin Clark-Casey (justincc) eb5e39d6ef Fire CHANGED_MEDIA event if a media texture is set or cleared 2010-07-26 23:34:20 +01:00
Justin Clark-Casey (justincc) a5ad792e6c implement llSetPrimMediaParams()
Untested
2010-07-26 23:34:19 +01:00
Justin Clark-Casey (justincc) 9682e0c733 Implement media texture persistence over server restarts for sqlite
This is currently persisting media as an OSDArray serialized to LLSD XML.
2010-07-26 23:34:19 +01:00
Justin Clark-Casey (justincc) 4a6adff4cd start storing a mediaurl on the scene object part
not yet persisted or sent in the update
2010-07-26 23:34:18 +01:00
Melanie ac1a34714d Allow Megaregions to start properly after an unclean shutdown 2010-07-20 23:24:04 +01:00
Diva Canto f08afc4f87 Restore lines that have been removed due to previous merge conflict. 2010-07-20 14:28:17 -07:00
Melanie 176cb01130 Remove a merge artefact 2010-07-20 21:38:31 +01:00
Melanie Thielker 120d7014fd When a god uses mass permission setting, the V bit is cleared from next
perms, rendering the item unmoveable for the next owenr. Make god mods
conform to the rules, too.
2010-07-20 21:01:46 +01:00
Melanie Thielker ea51bea508 prevent hacked viewers from being able to delete arbitrary items from any
prim. Allow friends with perms and shared group members to move or copy
things out of prims
2010-07-20 21:01:14 +01:00
Melanie Thielker 78605baab3 Fix a few permissions vulnerability. Owners could cause permissions
escalation on items contained in prims using a hacked viewer
2010-07-20 21:00:56 +01:00
Diva Canto 7c124a5543 Relaxed the ultra-conservative lock on m_items. Needs testing under linux and stress. 2010-07-20 05:59:18 -07:00
Diva Canto cd2bb7daf3 Deleted Snoopy's patch completely, including Thread.Sleep. Preliminary tests indicate that this is what causes deadlock. More tests needed. 2010-07-19 08:07:37 -07:00
Melanie a974704a3e re-add the sleep lost in the revert. 2010-07-19 14:37:27 +01:00
Melanie 575f7d3366 Revert "Thank you, Snoopy, for a patch to reduce sim script startup CPU usage"
This reverts commit c404c5fb54.
2010-07-19 14:36:53 +01:00
Melanie e1ea82b329 Major attachments cleanup. Remove unused AttachObject ClientView method
Clean up use of AttachObject throughout, reduce number of overloads
and number of parameters
2010-07-14 19:51:12 +01:00
Melanie Thielker a7b5fe6a88 Remove useless quaternion parameter from AttachObject sig 2010-07-14 19:49:54 +01:00
Diva Canto 12858122d5 Fixes mantis #4870. 2010-07-14 11:02:41 -07:00
Melanie Thielker 39cd57598b Fix a permissions issue 2010-07-14 16:12:44 +01:00
Melanie 33aa7ba7dc Revert "More on mantis #4869. This fixes the problem of objects showing up as no copy when they are copy-able. It works, but I have no idea what I'm doing."
Cuauses a permission escalation. do NOT USE the preceding commit
2010-07-14 14:59:34 +01:00
Diva Canto bec1d7cc36 Removed left-over debug messages. 2010-07-14 07:00:24 -07:00
Diva Canto 87fb19162e More on mantis #4869. This fixes the problem of objects showing up as no copy when they are copy-able. It works, but I have no idea what I'm doing. 2010-07-14 06:57:56 -07:00
Melanie Thielker cd8bb316ea Remove getting the object capacity from the money module. It is now set
directly from the Region Info (and the region ini file)
2010-07-14 03:51:00 +01:00
Melanie dd14016885 Revamp the permissions propagation. This MAY mess up. Please test.
Change the slam bit from 3 to 4. Assume the old slam bit is always set.
The new slam bit is a "changed owner" bit, correcting a bug where an item
passed from the creator to another with less than full perms, then back (sale
test) would arrive back full perm. Lots of in-code docs.
2010-07-13 20:45:16 +01:00
Melanie Thielker 26621ca500 Add scripted controllers into agent intersim messaging 2010-07-11 14:50:14 +01:00
Melanie eaea89bbb7 Remove localID from script controls data. It won't transfer to another
region anyway
2010-07-11 13:09:11 +01:00
Melanie Thielker 1169bfeaf3 Make taken items go back to the folder they came from 2010-07-10 10:43:34 +01:00
Diva Canto c7e4880a5e One more buglet fixed related to mantis #4841 -- auto-returns were still chocking on a null pointer exception. 2010-07-05 03:36:26 -07:00
Diva Canto abe0a9ff49 Fixes the obvious problem in mantis #4841. Melanie needs to look at other potential problems there, though. 2010-07-04 02:59:38 -07:00
Melanie Thielker e15f6905a5 Clean up IMoneyModule and adjust the other modules to the changes 2010-07-02 06:13:58 +01:00
Justin Clark-Casey (justincc) be0af01061 Revert "stop exceptions in setting and getting state from propogating since they aren't fatal to operations"
This reverts commit 94cb6fc916.
2010-06-29 23:43:38 +01:00
Melanie 5d11833ae1 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2010-06-29 20:36:36 +01:00
Justin Clark-Casey (justincc) 94cb6fc916 stop exceptions in setting and getting state from propogating since they aren't fatal to operations
this will hopefully stop "save oar" from failing if a script asset is corrupt
2010-06-29 21:08:09 +01:00
Melanie 5964084d25 Fix a nullref on autoreturn 2010-06-29 20:36:17 +01:00
Melanie Thielker 85a9c305a2 Remove AgentID and GroupOD from the signature of SOG.Copy(). They were never
used, but made for a very mispleading read of the code in the callers.
2010-06-28 01:43:26 +01:00
Melanie Thielker 4cdda2cae9 Fix Copy on Ray, Drag Copy and other little things. Removed the wrong and
nonworking ownership assignment in SOG, which messed things up before.
No longer trust the client to send the ID of the person something is copied
as, since it allows to run a script with someone else's permissions. Properly
adjust inventory ownership and perms.
2010-06-28 01:36:40 +01:00
Melanie Thielker 660a560d3b Make drag copy and copy-on-ray handle friends list perms properly 2010-06-27 20:59:51 +01:00
Melanie 3612a5252b Fix more perms weirdness. Preserve "Locked" status across gives and rez/take.
Preserve "Anyone can move" flag in most cases.
2010-06-27 20:23:33 +01:00
Melanie 205d2496f6 Fix permission propagation to prevent permanently locked objects from being
created.
2010-06-27 20:04:39 +01:00
Justin Clark-Casey (justincc) 52b711af82 stop KeyNotFoundException() being thrown in RemoveScenePresence if the agent isn't present in the presence dictionary
the code to do this was there but was being circumvented by newmap[agentID] before the check actually took place
2010-06-25 18:55:20 +01:00
Melanie c404c5fb54 Thank you, Snoopy, for a patch to reduce sim script startup CPU usage 2010-06-23 21:14:28 +01:00
Melanie Thielker 68551675df Guard prioritizer agains null values as those produced by a bullet dying
before it can be updated
2010-06-22 23:39:39 +01:00
Diva Canto 1e7ce6dbce Hunting for the problem in #4777 2010-06-19 09:44:02 -07:00
Diva Canto 9c9ce9e8dd * Deleted duplicated migration that was failing anyway.
* Added an error message in initial estate owner creation that makes it clear what needs to happen.
2010-06-14 11:50:42 -07:00
Diva Canto bd346ab8c7 Fixes attachments coming back upon being detached in neighbouring regions and crossing. 2010-06-13 19:18:17 -07:00
Diva Canto 19558f380a Fixes the long-standing RegionUp bug! Plus lots of other cleanups related to neighbours. 2010-06-13 19:06:22 -07:00
Diva Canto b3594681a4 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2010-06-12 12:09:06 -07:00
Diva Canto 66619b5996 Added checks for failed UpdateAgent calls. 2010-06-12 12:08:45 -07:00
Melanie 59acb37d92 Change name of method to better reflect what it does 2010-06-12 19:14:46 +01:00
Diva Canto e6efe34b4c * Added CHANGED_TELEPORT event trigger upon inter-sim teleports.
* Cleaned up NewUserConnection.
2010-06-12 11:11:13 -07:00
Melanie Thielker 3c036934a3 Preserving the link numbers is a serializer's highest duty.
Prevent region crossings from screwing up complex attachments by preserving
link numbers.
2010-06-12 08:28:00 +01:00
Melanie 65f03af38f Don't filre CHANGED_INVENTORY if a prim comes in from storage 2010-06-12 07:34:55 +01:00
Melanie c8ed972443 Move "StopFlying()" into LLSpace. Try to reinstate the carefully crafted packet
we used to send before slimupdates and explicitly send it
2010-06-12 01:25:25 +01:00
Diva Canto d184fef4dc Inventory offers and subsequent notifications of acceptance/decline now working across the board. 2010-06-11 12:47:47 -07:00
Diva Canto b2b6799f1c Added more debug messages to try to pinpoint where login is failing for nebadon. 2010-06-10 18:26:04 -07:00
Diva Canto e80cb815df Bug fix on attachments: attach->drop->attach works now. 2010-06-09 12:51:24 -07:00
Diva Canto 8fc5eda2c9 Bug fix in attachments: when attaching from inworld the item's parentFolderID was wrong. 2010-06-09 10:55:37 -07:00
Melanie 1be53b58a7 Give attachments the same priority as other avatars in BestAvatarResponsiveness
policy
2010-06-09 17:02:01 +01:00
Dan Lake ca2abc43ad Refactor SendCoarseLocations for better performance. Instead of computing list of all locations fresh for every scene presence on every frame, we will instead compute the list once every 50 frames and send to all connected presences at that time. Also, we only add 60 items to the list when there are more than 60 presences in the scene. For 1000 users, this change yields a 99.8% reduction in list processing and a 98% reduction in network bandwidth for coarse locations. 2010-06-08 16:44:18 -07:00
Justin Clark-Casey (justincc) db73b1c64e Adjust object update priorities such that root prims are sent to the viewer before child prims.
This was originally a fix for huds, since child prims fail to display if the viewer doesn't receive the root prim update first.
However, on the advice of jhurliman, this has been done for all objects, both ordinary and attachments.
The separate mechanism in LLClientView which prevents child prim updates being sent out first is still present temporarily.
This is a foreport of the equivalent fix in 0.6.9-post-fixes, though that was for attachments only.
2010-06-08 15:32:18 +01:00
Justin Clark-Casey (justincc) b6076d7b33 Reduce number of full updates sent on region crossing for attachments/huds to 1 from 3
This is one step towards reducing hud glitches on region crossing, since the viewer fails to display prims if it receives child full updates before the root prim full update
This commit also introduces a mechanism in LLClientView to stop child attachment updates ever going out before the root one
This is a very temporary mechanism and will be commented out when the next step of the fix (to give root prims higher udpate priority) is committed
This code is a foreport from the equivalent changes in 0.6.9-post-fixes
2010-06-08 15:07:57 +01:00
Melanie Thielker d91bd7646d Add a call to SOG.ResumeScripts() after region crossing / teleport 2010-06-07 00:11:30 +01:00
Diva Canto ab3afd5f42 * Bug fix in TP home: typo in unpacking of GridUserInfo.
* Bug fix in TPs across neighboring regions: bug was introduced when getting rid of crashed sessions.
2010-06-05 09:39:09 -07:00
Justin Clark-Casey (justincc) 041f253e2b minor: comment out region interface registration log msg I accidentally left in last week
also changes one log message to print out full exception stack trace on both mono/.net instead of just .net
2010-06-04 18:08:40 +01:00
Melanie Thielker a863eb9da3 One should not lock null objects. 2010-06-01 19:01:57 +01:00
Melanie 9c3c020697 Lock the object queue when dequeueing 2010-06-01 15:08:45 +01:00
Melanie Thielker 4867dd135d Fix prim returns I broke earlier 2010-06-01 02:12:56 +01:00
Melanie Thielker a5728cc91c Fix prim returns I broke earlier 2010-06-01 02:10:53 +01:00
Melanie Thielker f29cb57bf1 Continuing refactor. Refactor DeRezObject to deal with multiple objects 2010-06-01 02:10:22 +01:00
Melanie Thielker bde01e26e1 Add a method to get the bounding box and root prim offsets within it for
a group of prims.
2010-06-01 02:10:11 +01:00
Melanie Thielker 2fce7d9bcf Split GetAxisAlignedBoundingBox into two methods to allow calculation of
combined bounding boxes and offsets
2010-06-01 02:10:08 +01:00
Melanie Thielker be69259981 Change the handling of CreateSelected. Only send it on real creation, not
for each prim coming into view.
2010-06-01 01:39:54 +01:00
Melanie Thielker e515467c5e Fix create selection getting overwritten by multiple updates for the same prim. 2010-05-31 17:55:56 +01:00
Justin Clark-Casey (justincc) 191db0e6a4 get TestSaveIarV0_1() uncommented but not running as a test yet since I didn't get the authentication server to work and my brain is about to fizzle out my ears 2010-05-28 23:14:24 +01:00
Justin Clark-Casey (justincc) fff5459f4d Add ability to load IARs directly from URIs
So, something like

load iar Justin Clark-Casey / PASSWORD http://justincc.org/downloads/iars/my-great-items.iar

Will load my IAR directly from the web.
2010-05-28 20:07:15 +01:00
Justin Clark-Casey (justincc) 6b568af565 Adjust Scene.DeleteAllSceneObjects() to not delete objects attached to avatars.
This is going to be the right behaviour in all cases, I should think.
This means that avatars in region when an oar is loaded do not lose their attachments
2010-05-28 18:49:32 +01:00
Justin Clark-Casey (justincc) 877fe774ef Simplify AddFullUpdateToAvatars()/AddPartialUpdateToAvatars() by calling the object's corresponding single avatar update method, rather than calling the sceneviewer directly 2010-05-28 17:58:51 +01:00
Justin Clark-Casey (justincc) 596001632b remove redundant ScenePresence.QueuePartForUpdate() - every place in the code calls SceneViewer.QueuePartForUpdate() directly 2010-05-28 17:53:57 +01:00
Melanie Thielker 8fb706716b Prevent a null ref 2010-05-27 19:09:06 +01:00
Melanie 7d9b316ce6 Change the way alpha is interpreted on prim text. Manris #4723 2010-05-24 23:37:47 +01:00
Melanie f84f0dbd51 Remove an unneeded conditional 2010-05-23 06:12:40 +01:00
Justin Clark-Casey (justincc) e5bcd8b341 Apply adaption of patch in http://opensimulator.org/mantis/view.php?id=4628
This prevents a ground-sitting avatar from being moved about in mouselook
Thanks mirceakitsune!
2010-05-21 23:29:37 +01:00
Melanie 4e23acb133 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2010-05-21 21:04:17 +01:00
Justin Clark-Casey (justincc) 6918446fcd Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2010-05-21 22:17:58 +01:00
John Hurliman d0eecf0398 Added a sanity check before using m_config in the Scene constructor 2010-05-21 14:17:03 -07:00
John Hurliman abd5d1f747 * Added code comments to Prioritizer.cs that document how to add a new update priority policy 2010-05-21 14:04:10 -07:00
Justin Clark-Casey (justincc) 89f1ddb0a5 Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2010-05-21 21:58:55 +01:00
Justin Clark-Casey (justincc) 5287c5f7fb rearrange SceneGraph.AddSceneObject() to return earlier if an object with that uuid is already in the scene
this means that we don't perform pointless work
2010-05-21 21:57:56 +01:00
John Hurliman 93ef65c690 * Moving all of the prioritization/reprioritization code into a new file Prioritizer.cs
* Simplified the interest management code to make it easier to add new policies. Prioritization and reprioritization share code paths now
* Improved the distance and front back policies to always give your avatar the highest priority
2010-05-21 13:55:36 -07:00
Justin Clark-Casey (justincc) 4b518e0288 minor: remove LongRunning test designator from TestAddSceneObject() since it isn't, really 2010-05-21 21:48:47 +01:00
Justin Clark-Casey (justincc) 76135eec5b add test to make sure that adding an object where one already exists in the scene with that uuid fails 2010-05-21 21:46:41 +01:00
Justin Clark-Casey (justincc) 8d968249ec extend TestAddSceneObject() to check Scene.AddNewSceneObject() return boolean
improve test to retrieve object by known uuid rather than dynamically assigned local id
2010-05-21 21:38:47 +01:00
Justin Clark-Casey (justincc) f83acf533b Fix a problem where SceneGraph.AddSceneObject() would return false on successfully adding an object rather than true, in defiance of its method documentation
This meant that the returns were inconsistent - false would be returned both for various scene object failure conditions (e.g. root part was null) and if the object was successfully added.
2010-05-21 21:22:53 +01:00
Melanie 2b5b2f4e60 Add a new priority scheme that works like FrontBack, but completely deprioritizes
static prims, creating a hierarchy as follows:
0 == own avatar < other avatars < pysical prims < static prims
For a child agent, simply acts like FrontBack
2010-05-21 21:02:26 +01:00
Justin Clark-Casey (justincc) 74ef1ed36f add prim item and test asset save in save oar unit test 2010-05-21 19:36:39 +01:00
Melanie 1d6ab445ab Change the way the object perms are propagated to attempt to salvage
some older content
2010-05-21 15:31:27 +01:00
unknown beed74096c Merging slimupdates2 2010-05-20 12:28:13 -07:00
Diva Canto b7e6b58857 Fixes mantis #4622. 2010-05-16 09:01:27 -07:00
Diva Canto 2a1e45f657 Finalized the client's TCP IP address verification process for HG1.5. 2010-05-15 19:25:14 -07:00
Dan Lake 36bcab5f07 Refactor scene presence list for lockless iteration. Lock contention will now only be for simultaneous add/removes of scene presences from the scene. 2010-05-15 02:20:23 -07:00
unknown bf5c81d77e * Initial commit of the slimupdates2 rewrite. This pass maintains the original behavior of avatar update sending and has a simplified set of IClientAPI methods for sending avatar/prim updates 2010-05-12 15:59:48 -07:00
Diva Canto b233a4b2ca * Fixed spamming the assets table with map tiles. The tile image ID is now stored in regionsettings. Upon generation of a new tile image, the old one is deleted. Tested for SQLite and MySql standalone.
* Fixed small bug with map search where the local sim regions weren't found.
2010-05-09 13:39:56 -07:00
Diva Canto a58859a0d4 GridUserService in place. Replaces the contrived concept of storing user's home and position info in the presence service. WARNING: I violated a taboo by deleting 2 migration files and simplifying the original table creation for Presence. This should not cause any problems to anyone, though. Things will work with the new simplified table, as well as with the previous contrived one. If there are any problems, solving them is as easy as dropping the presence table and deleting its row in the migrations table. The presence info only exists during a user's session anyway.
BTW, the Meshing files want to be committed too -- EOFs.
2010-05-07 21:29:56 -07:00
Diva Canto 53594e599e * Fixes Library bugs in grid mode. Partly a missing check and partly a missing configuration.
* Made previous Robust config changes consistent in Robust.HG.ini.example
2010-05-05 21:12:13 -07:00
Melanie Thielker 2b48ed60ec Remove the m_Viewer variable and make the property a shortcut to the
proper field in AgentCircuitData instead
2010-05-05 23:41:57 +01:00
Melanie ad2039a8c4 Stab a test fail 2010-05-05 22:48:05 +01:00
Melanie Thielker e45f5ac126 Plumb Viewer version into ScenePresence for initial login. It's still not
carried along
2010-05-05 22:33:22 +01:00
Melanie Thielker 2ebe148266 Plumb the viewer version string through into AgentCircuitData. Now all that
is left os to figure out what black magic turns AgentCircuitData into
AgentData and then copy that into the ScenePresence, where m_Viewer is
already added with this commit and waits for the data.
2010-05-05 22:15:32 +01:00
Melanie Thielker 9cf0077bf9 Add "reload estate" command to sims 2010-05-04 16:11:06 +01:00
Melanie Thielker 6eea0a3931 Allow reloading of estate settings into a running region. Move sun update
helper into Scene, since that is less evil than exposing m_storageManager
to the public.
2010-05-04 15:52:36 +01:00
Melanie Thielker 92561aef8d Store given items in correct parent folder. Fixes items given to offline avatars
not getting lost.
2010-05-03 21:25:02 +01:00
Melanie 1494c84f56 Fix a bug in owner change notification 2010-05-03 02:40:52 +01:00
Melanie 7a8ad1ceb2 Make in-place sale send CHANGED_OWNER again 2010-05-03 01:30:57 +01:00
Melanie 45301d8a49 Defer sending of CHANGED_OWNER to make it work on rezzed objects and
attachments in addition to objects sold in place
2010-05-03 01:14:38 +01:00
Melanie Thielker 177048a651 Fix linking issue introduced in my earlier commit 2010-04-30 20:16:21 +01:00
Melanie 22b3217113 Fix link security issue 2010-04-30 11:46:50 +01:00
Melanie edde0be0a0 Fix build break. 2010-04-27 01:11:14 +01:00
Melanie 6928ec0240 Add a parameter to prim inventory update to prevent event firing 2010-04-27 00:25:29 +01:00
Justin Clark-Casey (justincc) 6b963e73d9 Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2010-04-19 21:28:30 +01:00
Justin Clark-Casey (justincc) 524a2a9e26 Make the "notecard saved" text appear in the saver rather than the notecard owner, if the notecard is saved by a permitted group member
This means moving the alert up to a place where the IClientAPI is available.
One can also argue that such client messages shouldn't be sent directly from the scene data model
2010-04-19 21:25:59 +01:00
Melanie 3e63ce6d9d Make script asset fetches synchronous. Script instantiation synchronization
will not work if the instance is not created when the method returns.
2010-04-19 15:29:35 +01:00
Melanie Thielker 689b647790 And some more rez modes that weren't covered before 2010-04-19 10:54:41 +01:00
Melanie b39db7e9e4 Also enable scripts rezzed into prims 2010-04-19 10:43:25 +01:00
Melanie 21cad5d3ac All scripts are now created suspended and are only unsuspended when the object
is fully rezzed and all scripts in it are instantiated. This ensures that link
messages will not be lost on rez/region crossing and makes heavily scripted
objects reliable.
2010-04-19 06:29:26 +01:00
Justin Clark-Casey (justincc) 26e3884237 refactor: move DeatchObject() into the AttachmentsModule 2010-04-17 00:00:45 +01:00
Justin Clark-Casey (justincc) ab3af43d5e refactor: remove now unused internal method SendAttachEvent() 2010-04-16 23:29:36 +01:00
Justin Clark-Casey (justincc) 57c293d604 refactor: crudely move DetachSingleAttachmentToGround() over to the AttachmentsModule 2010-04-16 23:15:13 +01:00
Justin Clark-Casey (justincc) 45563e20e0 minor: correctly print out missing item id when it can't be found rather than a NullReferenceException 2010-04-16 22:57:44 +01:00
Justin Clark-Casey (justincc) 17d023ba5b refactor: crudely move the RezMultipleAttachments() method into the AttachmentsModule 2010-04-16 22:54:25 +01:00
Robert Adams 54a5b6f434 Reduce number of AvatarAnimations sent with large number of avatars 2010-04-13 18:50:08 -07:00
dahlia 3d0860ae61 thanks lkalif for Mantis #4676 - a patch that adds support for inventory links
Signed-off-by: dahlia <dahliaTrimble@gmail.removeme.com>
2010-04-12 17:10:51 -07:00
Justin Clark-Casey (justincc) 9ecad50419 Partially implement share with group option for object inventory items
If serverside permissions are off then this works as expected.  Previously, it was impossible for more than one person to edit such items even if permissions were off.
If serverside permissions are on then this works as expected if the object was created by an avatar who had the required group active.
However, if the group for the object is later set then the contained item is still not editable.  This may be linked to a wider bug where the object is still not modifiable by the group anyway
2010-04-05 19:37:02 +01:00
Melanie ec637e2b8c Committing the LightShare code, which was developed by TomMeta of Meta7.
This allows scripts to set WindLight parameters for clients connecting
to a region. Currently, this is only supported by the Meta7 viewer.
2010-03-31 04:20:20 +01:00
Melanie 607ed61ec2 Stab one bug. When joining an estate with a new region, make sure it's also
used on first run and not only later.
2010-03-28 23:18:25 +01:00
John Hurliman 5a2315c68c * Fixed a bug with null value handling in WebUtil.BuildQueryString()
* Changed the null check back in estate manager setup but fixed the case for an existing account being found
* Implemented SetPassword() in the SimianGrid auth connector
2010-03-26 12:21:05 -07:00
John Hurliman dd1c1b3bcd Fixed a backwards null check that was preventing estate owner from being set and a misleading error message (in grid mode it tries to get a user, not create one) 2010-03-26 11:08:14 -07:00
Justin Clark-Casey (justincc) 19c659ca99 fix unit tests broken by commit dcf18689b9
can't prompt for estate owner in unit tests
2010-03-25 21:46:23 +00:00
Melanie dcf18689b9 First stage of the new interactive region creation. This will allow creation
of a region and joining it to an existing estate or creating a new estate,
as well as creating an estate owner if in standalone, and assigning estate
owners. In Grid mode, existing users must be used. MySQL ONLY!!!! so far, as
I can't develop or test for either SQLite or MSSQL.
2010-03-23 02:05:56 +00:00
Melanie 70b0e07d1e Remove the reading of estate_settings.xml and the associated processing of
defaults. Adding code to facilitate estate creation / managemment as part of
first time start up
2010-03-22 18:49:56 +00:00
John Hurliman 5e65bef805 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-03-19 15:17:15 -07:00
Dan Lake 62e0b53ca4 Renamed TryGetAvatar to TryGetScenePresence on SceneManager, SceneBase, Scene and SceneGraph. This was the only change in this patch to keep it isolated from other recent changes to the same set of files. 2010-03-19 15:16:44 -07:00
Dan Lake 859bc717a4 Cleaned up access to scenepresences in scenegraph. GetScenePresences and GetAvatars have been removed to consolidate locking and iteration within SceneGraph. All callers which used these to then iterate over presences have been refactored to instead pass their delegates to Scene.ForEachScenePresence(Action<ScenePresence>). 2010-03-19 15:16:35 -07:00
Melanie 734b0416de Unify a previous refactor of object return with the older solution. We
really don't need two methods doing the same thing, but differently.
2010-03-18 18:57:29 +00:00
Dan Lake 73e9b0be72 Inconsistent locking of ScenePresence array in SceneGraph. Fixed by eliminating option to return the actual list. Callers can now either request a copy of the array as a new List or ask the SceneGraph to call a delegate function on every ScenePresence. Iteration and locking of the ScenePresences now takes place only within the SceneGraph class.
This patch also applies a fix to Combat/CombatModule.cs which had unlocked iteration of the ScenePresences and inconsistent try/catch around the use of those ScenePresences.
2010-03-17 11:21:27 -07:00
John Hurliman b51f40da8f Removed the unused use_async_when_possible config variable 2010-03-16 12:03:04 -07:00
John Hurliman b4dcdffb50 Fixed several unhandled exceptions and performance issues with PrimitiveBaseShape.Textures. This really should be moved from a property to a method if it is going to decode a byte[] into a TextureEntry each time 2010-03-16 11:50:22 -07:00
John Hurliman 4e180e84e2 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-03-15 15:38:55 -07:00
John Hurliman 33f5d0d1e9 * UuidGatherer now tracks asset types for assets it discovers. The asset types are inferred from context
* OAR saving will attempt to correct unknown asset types before writing broken assets to the OAR file
2010-03-15 14:17:17 -07:00
dahlia 2ebc4be99d add a null check in ScenePresence constructor 2010-03-13 12:04:49 -08:00
Justin Clark-Casey (justincc) 315fa06c75 refactor: Move another RezSingleAttachment() from Scene.Inventory to AttachmentsModule 2010-03-12 23:20:38 +00:00
Justin Clark-Casey (justincc) 6828d8ecbe Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2010-03-12 22:49:16 +00:00
Justin Clark-Casey (justincc) 582375509c refactor: move RezSingleAttachmentFromInventory() from SceneGraph to AttachmentsModule 2010-03-12 22:48:49 +00:00
John Hurliman 5beb08be31 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-03-12 14:40:21 -08:00
Justin Clark-Casey (justincc) b9f5cd75bc refactor: move client invoked AttachObject from SceneGraph to AttachmentsModule 2010-03-12 22:39:15 +00:00
John Hurliman 3036aba875 * Added a better check to the SimianGrid connectors to test if they are enabled or not. This method should work equally well with standalone or robust mode
* Applying #4602 from Misterblu to add collision detection to BulletDotNET
2010-03-12 14:28:31 -08:00
Justin Clark-Casey (justincc) f2de50bb14 Fix tests broken in 88771aeed3
Adds MockUserAccountService and connects it up
Stops services being carried over between tests since this leads to hard to find bugs
Improves information and error reporting when loading plugins
2010-03-12 19:31:14 +00:00
John Hurliman b18ca2fee6 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-03-10 14:06:12 -08:00
John Hurliman 2af97b46ec * Cleaned up and commented the messy SendInventoryUpdate, fixed a broken debug line, and commented the debug line out since it can quickly become noisy 2010-03-10 14:05:49 -08:00
Jeff Ames f58a0394ed Formatting cleanup. Add copyright notices. 2010-03-10 13:15:36 +09:00
Melanie 88771aeed3 Cache UserLevel in ScenePresence on SP creation. Change IsAdministrator
to use that stored value.
2010-03-09 23:11:28 +00:00
unknown 98f91a252c - parcel blocking, region crossing blocking, teleport blocking
Signed-off-by: Melanie <melanie@t-data.com>
2010-03-09 22:43:55 +00:00
Diva Canto f4c165afe7 Bug fix: store correct position information upon logout. Fixes mantis #4608 2010-03-06 08:21:54 -08:00
Melanie 9fa9cfd215 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2010-03-06 11:58:19 +00:00
unknown c0bc25059c - implementing server 1.38 functions
Signed-off-by: Melanie <melanie@t-data.com>
2010-03-06 11:52:59 +00:00
John Hurliman 27b8d13057 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-03-05 17:05:15 -08:00
John Hurliman 36afd0bfd1 * Cache packed throttle data to avoid repeated allocations in CheckForSignificantMovement()
* Removed a lock on "return m_neighbours.Count" in GetInaccurateNeighborCount(). Dictionary<>.Count by itself does not benefit from locking
2010-03-05 17:04:20 -08:00
John Hurliman cde3c20ba3 * Fixed an order of operations bug in CheckForSignificantMovement() that was causing a flood of child updates to neighbors on login
* Removed an unnecessary call to the presence service
2010-03-05 17:01:31 -08:00
Justin Clark-Casey (justincc) 395f343498 refactor: Move DetachSingleAttachmentToInv to region module
need to rationalize method names later
2010-03-06 00:07:47 +00:00
Justin Clark-Casey (justincc) 71797af540 refactor: move another AttachObject method 2010-03-05 23:35:49 +00:00
Justin Clark-Casey (justincc) b72c2dc6e8 refactor: move user inventory side of RezSingleAttachment to module 2010-03-05 23:29:24 +00:00
Justin Clark-Casey (justincc) 60553e62a3 refactor: begin to move attachments code into a region module 2010-03-05 23:18:47 +00:00
Justin Clark-Casey (justincc) e07548d703 move linden notecard parsing from LSL_Api.cs to SLUtil so that region modules can use it 2010-03-04 20:08:25 +00:00
Justin Clark-Casey (justincc) 716e6f20e1 compiler warnings revealed that public PlaySoundSlavePrims properties were changing the wrong protected fields.
correcting these may resolve the sound problems seen recently on the mailing list, though not guaranteed.
2010-03-03 23:40:32 +00:00
Justin Clark-Casey (justincc) c4ba2e5dfb minor: remove some compiler warnings 2010-03-03 23:35:23 +00:00
Justin Clark-Casey (justincc) 8305e6af07 refactor: push sog.SendPartFullUpdate() down into sop where it better belongs
no functional changes
2010-03-03 23:29:09 +00:00
Justin Clark-Casey (justincc) a0b22a9adc Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2010-03-03 22:48:41 +00:00
Justin Clark-Casey (justincc) edb176447b Fix bug where approximately half the time, attachments would rez only their root prim until right clicked (or otherwise updated).
The root cause of this problem was that multiple ObjectUpdates were being sent on attachment which differed enough to confuse the client.
Sometimes these would eliminate each other and sometimes not, depending on whether the scheduler looked at the queued updates.
The solution here is to only schedule the ObjectUpdate once the attachment code has done all it needs to do.
2010-03-03 22:14:06 +00:00
John Hurliman fc233d4e1e * Adjusted the significant movement magic value from 0.5m to 2.0m and added an explanation of what it does 2010-03-03 12:34:21 -08:00
John Hurliman 13a8d11c46 Removing the sLLVector3 dinosaur 2010-03-03 12:12:32 -08:00
John Hurliman 94a3e60bd0 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-03-03 11:03:56 -08:00
John Hurliman a6e23a3275 * Fixed bad start position clamping in MakeRootAgent() 2010-03-03 10:59:05 -08:00
Justin Clark-Casey (justincc) 660ebe52cf Actually make EventManager.OnAttach() fire when an object is attached. Previously, only detach was firing! 2010-03-03 18:40:33 +00:00
Justin Clark-Casey (justincc) 1c68ad2bba remove references to OpenSim.Framework.Commuications.Tests.dll since all relevant test code has been obsoleted
this allows the tests to pass on my local system
2010-03-03 17:50:05 +00:00
Diva Canto 14073831d2 Fixes Region.Framework tests. Although these tests don't fail, they need to be rewritten, because they are doing agent manipulations in the wrong way, so they're fairly meaningless. 2010-03-02 07:53:52 -08:00
Diva Canto 5c5966545d Initial Online friends notification seems to be working reliably now. All this needs more testing, but everything is there. 2010-02-28 12:07:38 -08:00
John Hurliman d506449f67 * Removed the unused GridRegion.getInternalEndPointPort() (just use InternalEndPoint.Port). This class is complex enough as it is
* Changed the failed to inform neighbor message from a warning to info, since this will fire for every empty neighbor space
* Made the EnableSimulator/EstablishAgentCommunication log message more verbose and more clear about what is happening
2010-02-23 00:59:24 -08:00
John Hurliman df76e95aa2 Changed asset CreatorID to a string 2010-02-22 14:18:59 -08:00
John Hurliman 71c6559a91 Merge branch 'presence-refactor' of ssh://opensimulator.org/var/git/opensim into presence-refactor 2010-02-22 14:10:19 -08:00
John Hurliman 7665aad002 * Adds CreatorID to asset metadata. This is just the plumbing to support CreatorID, it doesn't modify database backends or OAR files to support storing/loading it 2010-02-22 13:27:17 -08:00
Melanie 1f45e6c649 Merge branch 'master' into presence-refactor
This brings presence-refactor up to master again
2010-02-22 03:00:59 +00:00
Jeff Ames 2dea162073 Formatting cleanup. 2010-02-22 12:25:59 +09:00
Justin Clark-Casey (justincc) 4c90ee2943 Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2010-02-16 19:08:06 +00:00
Justin Clark-Casey (justincc) 052f2b3e27 minor: Make SOG.DelinkFromGroup() return the newly delinked scene object instead of void 2010-02-16 14:36:08 +00:00
Jeff Ames af265e001d Formatting cleanup. 2010-02-15 19:21:56 +09:00
Revolution 5c7acd0d4d Fixes a bug in the previous patch.
Signed-off-by: Melanie <melanie@t-data.com>
2010-02-15 01:07:02 +00:00
Melanie c033223c63 Merge branch 'master' into presence-refactor 2010-02-15 00:20:48 +00:00
Melanie 2c0c21d0a5 Plug a small hole 2010-02-14 23:58:54 +00:00
Revolution 9821c4f566 Revolution is on the roll again! :)
Fixes: Undo, T-pose of others on login, modifiedBulletX works again, feet now stand on the ground instead of in the ground, adds checks to CombatModule. Adds: Redo, Land Undo, checks to agentUpdate (so one can not fall off of a region), more vehicle parts. Finishes almost all of LSL (1 function left, 2 events).

Direct flames and kudos to Revolution, please

Signed-off-by: Melanie <melanie@t-data.com>
2010-02-14 22:18:46 +00:00
Justin Clark-Casey (justincc) 802a969267 Fix http://opensimulator.org/mantis/view.php?id=4224
This resolves the problem where eyes and hair would turn white on standalone configurations
When a client receives body part information, for some insane reason or other it always ends up uploading this back to the server and then immediately re-requesting it.
This should have been okay since we stored that asset in cache.  However, the standalone asset service connector was not checking this cache properly, so every time the client made the request for the asset it has just loaded it would get a big fat null back in the face, causing it to make clothes and hair white.
This bug did not affect grids since they use a different service connector.
2010-02-12 21:32:03 +00:00
Melanie 1d75ad9fd5 Merge branch 'master' into presence-refactor 2010-02-08 21:54:26 +00:00
Justin Clark-Casey (justincc) 9f4883d146 refactor: Reuse SceneObjectGroup.IsAttachmentCheckFull() in Scene.AddSceneObject since this wraps a check that is much less clear 2010-02-08 19:10:54 +00:00
Justin Clark-Casey (justincc) 00947cf2ca Add EventManager.OnIncomingSceneObject event which is triggered by an incoming scene object
Add a read-only Attachments property to ScenePresence
2010-02-08 19:02:20 +00:00
Melanie baaf660511 Merge branch 'master' into presence-refactor
This was a large, heavily conflicted merge and things MAY have got broken.
Please check!
2010-02-08 15:53:38 +00:00
Justin Clark-Casey (justincc) bf9fc69d01 minor: log what kind of wearable cannot be found 2010-02-05 19:34:25 +00:00
Justin Clark-Casey (justincc) 0a084a31e9 refactor: chain two ScenePresence constructors together to eliminate common code. No functional changes 2010-02-04 23:23:07 +00:00
Justin Clark-Casey (justincc) 16467f6654 Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2010-02-04 22:22:18 +00:00
Justin Clark-Casey (justincc) f1b99c4a7f minor: one method doc 2010-02-04 21:35:56 +00:00
Melanie 2953bee1f4 Revert "change position of OnAttach event firing so that this also happens when a user teleports into a region"
The behavior introduced here is not compatible with SL

This reverts commit b6bee4999c.
2010-02-04 17:11:06 +00:00
Justin Clark-Casey (justincc) b1dfcccc9a Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2010-02-03 22:14:58 +00:00
Justin Clark-Casey (justincc) 2c7672a2b9 minor: add a smidgen of EventManager doc 2010-02-03 19:27:44 +00:00