aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix avatar parameter updating for viewer 3 and maybe 2.Justin Clark-Casey (justincc)2011-09-235-88/+258
| | | | | | | | | When a slider parameter is changed, the viewer uploads a new shape (or other asset) and the item is updated to point to it. Viewer 1 uploaded the data in the initial request itself, so the asset references was almost always correctly updated. However, viewer 3/2 always uploads data in a subsequent xfer, which exposed a race condition where the viewer would make the item update before the asset had uploaded. This commit shuffles the order of operations to avoid this race, the item is updated with the new asset id instead of the old one while the upload was still taking place. A second race had to be fixed where avatar appearance would also be updated with the old asset id rather than the new one. This was fixed by updating the avatar appearance ids when the appearance was actually saved, rather than when the wearables update was made.
* Merge branch 'master' of ssh://opensimulator.org/var/git/opensimJustin Clark-Casey (justincc)2011-09-221-5/+5
|\
| * Merge branch 'master' of ssh://opensimulator.org/var/git/opensimDan Lake2011-09-219-87/+25
| |\
| * | Commented out new debug statements in ScenePresenceDan Lake2011-09-211-5/+5
| | |
* | | Fix failure to teleport when an agent is lured on the same sim (and probably ↵Justin Clark-Casey (justincc)2011-09-222-9/+18
| |/ |/| | | | | | | | | | | | | | | in neighbouring sims) with HG lure active It turns out that the HG lure module was setting up a pending lure when it intercepted the instant message on its way out to the target avatar. However, an IM would only be sent if the user was remote, so it would not be set up for users on the same sim or in an immediate neighbour. We fix this by adding the pending lure when the message goes out and ignoring a duplicate pending lure add if it goes to out via IM. Hopefully addresses http://opensimulator.org/mantis/view.php?id=5690
* | Reinstate option to land an npc when it reaches a target.Justin Clark-Casey (justincc)2011-09-229-87/+25
|/ | | | This is moved into ScenePresence for now as a general facility
* Move code which handles NPC movement into Scene so that this can also be ↵Justin Clark-Casey (justincc)2011-09-213-1/+203
| | | | | | | | used by Autopilot coming from the client side. I thought that I had implemented this but must have accidentally removed it. Adds a regression test to detect if this happens again. Temporarily disables automatic landing of NPC at a target. Will be fixed presently.
* Remove unused and never set SP.PreviousRotationJustin Clark-Casey (justincc)2011-09-211-8/+0
|
* get rid of an incredibly noisy logging message from the last commitJustin Clark-Casey (justincc)2011-09-211-1/+1
|
* Merge branch 'master' of ssh://opensimulator.org/var/git/opensimJustin Clark-Casey (justincc)2011-09-211-10/+14
|\
| * Make debug statements in ScenePresence consistent and add a few moreDan Lake2011-09-201-10/+14
| |
* | When calling osNpcMoveTo(), rotate the avatar in the direction of travel.Justin Clark-Casey (justincc)2011-09-212-6/+33
|/ | | | | | | This stops the npc walking backwards if the target is directly behind. This means that the npc no longer returns to its original rotation once movement has finished. If you want this behaviour, please store and reset the original rotation after movement. This is somewhat to address http://opensimulator.org/mantis/view.php?id=5678
* adjust some whitespace to trigger another build, to check the last failure ↵Justin Clark-Casey (justincc)2011-09-171-2/+2
| | | | was just a glitch
* Remove old bullet DotNET and X libraries in preparation for BulletSJustin Clark-Casey (justincc)2011-09-179-7027/+0
| | | | | These weren't working properly anyway. You will need to rerun prebuild.sh/.bat after this commit, and maybe "nant clean" as well.
* On setting a new avatar appearance, if height hasn't changed then don't set ↵Justin Clark-Casey (justincc)2011-09-172-1/+7
| | | | | | that same height in ScenePresence. This prevents unnecessary work in the ODE module, though possibly that should be checking against same size sets itself
* Stop the avatar stalling on its first boarder cross when using the ODE pluginJustin Clark-Casey (justincc)2011-09-162-6/+23
| | | | | | When upgrading the previously child agent to a root, the code was setting the Size parameter on the ODECharacter PhysicsActor. This in turn reset Velocity, which cause the border stall. I'm fixing this by commenting out the Velocity = Vector3.Zero lines since they don't appear to play a useful purpose
* minor: I was wrong about OffsetPosition - sometimes it genuinely does return ↵Justin Clark-Casey (justincc)2011-09-161-0/+4
| | | | | | offset position! Add method doc to explain this.
* Remove setter from SP.OffsetPosition, since all sets should flow through ↵Justin Clark-Casey (justincc)2011-09-162-5/+23
| | | | | | SP.AbsolutePosition OffsetPosition is also misnamed - it returns the absolute position and never contains an offset.
* Fix build errors on Windows by adding missing OpenSim.Services.Base referencejustincc2011-09-161-1/+2
|
* Reattaching a region was failing if the estate name had not changed (issue ↵Kevin Houlihan2011-09-162-1/+17
| | | | | | 5035). Using the RemoteAdmin API to close then recreate a region would fail if the estate name had not changed. If the estate name /was/ changed then the existing estate would be renamed rather than a new one being created. The problem really arose from a lack of distinction in the data storage layer between creating new estates and loading existing ones.
* Pass any region scope through to the CreateUser() methodJustin Clark-Casey (justincc)2011-09-161-2/+11
|
* refactor: move estate owner setup code into separate methodJustin Clark-Casey (justincc)2011-09-162-45/+52
|
* Correctly create a freshly created estate owner's default items and avatar ↵Justin Clark-Casey (justincc)2011-09-163-93/+65
| | | | entries on standalone if applicable.
* Write code to create minimum necessary body parts/clothing and avatar ↵Justin Clark-Casey (justincc)2011-09-152-1/+2
| | | | | | | | | | | | entries to make a newly created user appear as a non-cloud on viewer 2 Viewer 2 no longer contains the default avatar assets (i.e. "Ruth") that would appear if the user had insufficient body part/clothing entries. Instead, avatars always appear as a cloud, which is a very bad experience for out-of-the-box OpenSim. Default is currently off. My intention is to switch it on for standalone shortly. This is not particularly flexible as "Ruth" is hardcoded, but this can change in the future, in co-ordination with the existing RemoteAdmin capabilities. Need to fix creation of suitable entries for users created as estate owners on standalone. Avatars still appear with spooky empty eyes, need to see if we can address this. This commit adds a "Default Iris" to the library (thanks to Eirynne Sieyes from http://opensimulator.org/mantis/view.php?id=1461) which can be used.
* refactor: rename SOG/SOP.GetProperties() to SendPropertiesToClient() to ↵Justin Clark-Casey (justincc)2011-09-158-43/+43
| | | | | | reflect what it actually does This also makes it consistent with some other methods that send data to the client.
* Only bother to create an inventory xfer file if there are any items in a ↵Justin Clark-Casey (justincc)2011-09-151-2/+2
| | | | prim inventory
* Shuffle order of code in invnetory connector GetFolderContent() calls to ↵Justin Clark-Casey (justincc)2011-09-153-13/+19
| | | | avoid a possible race condition
* If a prim inventory becomes empty through deletion, send an empty xfer file ↵Justin Clark-Casey (justincc)2011-09-151-20/+43
| | | | | | | | | name rather than one that references a metadata file containing only the folder object. If we do this, then viewer 3 crashes when we try and rez a script directly in an attachment's prim inventory. Sending an empty file name was already being done if the prim's inventory had never been touched. Now we always do that if there are no items in that inventory. Hopefully addresses the remaining point in http://opensimulator.org/mantis/view.php?id=5644
* Don't try and delete attachments for child agent closeJustin Clark-Casey (justincc)2011-09-132-1/+34
|
* Remove code from DetachSingleAttachmentToInv() that sets group changed on ↵Justin Clark-Casey (justincc)2011-09-131-11/+0
| | | | all parts, now that we're performing this check in UpdateKnownItem() for other purposes
* remove redunant itemID and agentID arguments from UpdateKnownItem().Justin Clark-Casey (justincc)2011-09-131-6/+4
| | | | itemID is always taken taken from the group's stored item id, and agentID is never used.
* Remove UpdateKnownItem() from IAttachmentsModule.Justin Clark-Casey (justincc)2011-09-132-10/+1
| | | | It's not appropriate for code outside the attachments module to call this.
* minor: remove redundant grp != null check from AM.UpdateKnownItem()Justin Clark-Casey (justincc)2011-09-131-36/+33
|
* Stop attempts to rewear already worn items from removing and reattaching.Justin Clark-Casey (justincc)2011-09-134-44/+97
| | | | | | | | Viewer 2/3 will sometimes attempt to rewear attachments, even though they have already been attached during the main login process. This change ignores those attempts. This stops script failures during login, as the rewearing was racing with the script startup code. It might also help with attachments being abnormally put into deleted state. Hopefully resolves some more of http://opensimulator.org/mantis/view.php?id=5644
* Comment out attachments code in Scene.IncomingCreateObject(UUID userID, UUID ↵Justin Clark-Casey (justincc)2011-09-133-13/+47
| | | | | | | | | itemID) for now As far as I can see, this is only invoked by a PUT request to ObjectHandlers, which is not being used anyway. Invoking attachments code at this point is probably inappropriate since it would still be invoked when the client entered the scene. Being commented to simplify analysis of attachments issues. Can be uncommented when in use. Also, small tweak to lock and log removal of a SOG from the SceneObjectGroupsByLocalPartID collection in SceneGraph.GetGroupByPrim() if an inconsistency is found.
* stop the duplicate remove of the root part ids from the full part and local ↵Justin Clark-Casey (justincc)2011-09-132-3/+1
| | | | | | part indexes in SG.DeleteSceneObject() this is unnecessary because the parts array iterated through contains the root part as well as the non-root parts
* extend TestGetSceneObjectByPartLocalId() to test state after scene object ↵Justin Clark-Casey (justincc)2011-09-131-0/+6
| | | | deletion
* In SG.AddSceneObject(), stop unnecessarily adding the root part to object ↵Justin Clark-Casey (justincc)2011-09-131-7/+5
| | | | | | indexes sepearately from the other parts. The SOG.Parts property contains the root part as well as the non-root parts
* Add new TestGetSceneObjectByPartLocalId() for retrieving a scene object via ↵Justin Clark-Casey (justincc)2011-09-131-0/+27
| | | | the local id of one of its parts
* improve TestAddSceneObject() to test a multi-part object rather than a ↵Justin Clark-Casey (justincc)2011-09-131-11/+14
| | | | single-part
* In an object return message, send a null-terminated empty string in binary ↵Justin Clark-Casey (justincc)2011-09-131-1/+3
| | | | | | | | | 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
* eliminate redundant SP.m_regionInfo since it always has the scene.Justin Clark-Casey (justincc)2011-09-121-8/+6
| | | | We were already referencing through the scene in some places.
* remove the unused SP.initializeScenePresence()Justin Clark-Casey (justincc)2011-09-121-23/+2
|
* stop the redundant passing in of RegionInfo to SceneGraph, since the Scene ↵Justin Clark-Casey (justincc)2011-09-123-10/+7
| | | | is always passed in at the same time.
* minor: if the script engine fails to find a prim for a script, also print ↵Justin Clark-Casey (justincc)2011-09-122-1/+5
| | | | out that prim's local id in the error message.
* comment out some recent terrain texture loggingJustin Clark-Casey (justincc)2011-09-122-5/+5
|
* Start locking entire add/remove operations on an ↵Justin Clark-Casey (justincc)2011-09-124-175/+228
| | | | | | | | | 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.
* When creating an OAR, optionally exclude objects according to their permissionsOren Hurvitz2011-09-125-44/+216
|
* minor: put <remarks> tags around some method docJustin Clark-Casey (justincc)2011-09-121-5/+6
|
* lock attachments when enumerating through them in ScenePresence.CopyTo().Justin Clark-Casey (justincc)2011-09-101-20/+24
| | | | May have some effect on http://opensimulator.org/mantis/view.php?id=5644