aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/Avatar/Attachments (follow)
Commit message (Collapse)AuthorAgeFilesLines
* refactor: rename Scene.IncomingCloseAgent() to CloseAgent() in order to make ↵Justin Clark-Casey (justincc)2013-09-271-1/+1
| | | | | | it clear that all non-clientstack callers should be using this rather than RemoveClient() in order to step through the ScenePresence state machine properly. Adds IScene.CloseAgent() to replace RemoveClient()
* minor: remove mono compiler warning from AttachmentsModuleJustin Clark-Casey (justincc)2013-08-171-2/+1
|
* Add ScenePresenceTeleportTests.TestSameSimulatorIsolatedRegionsV2() ↵Justin Clark-Casey (justincc)2013-08-171-2/+2
| | | | | | regression test for v2 transfers. Also adjusts names of teleport setup helpers in EntityTransferHelpers
* refactor: Make ↵Justin Clark-Casey (justincc)2013-08-161-1/+1
| | | | AttachmentModulesTests.TestSameSimulatorNeighbouringRegionsTeleportV2 use already available TestClient handle rather than retrieving it via the ScenePresence
* minor: remove unused entity transfer config in teleport v2 attachments testJustin Clark-Casey (justincc)2013-08-141-1/+0
|
* Create TestSameSimulatorNeighbouringRegionsTeleportV2() regression test for ↵Justin Clark-Casey (justincc)2013-08-121-1/+112
| | | | V2 transfer protocol.
* Move experimental attachments throttling further down the chain so that ↵Justin Clark-Casey (justincc)2013-08-021-16/+15
| | | | multiple attachments changes (e.g. change outfit) are also throttled
* Add experimental "debug attachments throttle <ms>" setting (command line) ↵Justin Clark-Casey (justincc)2013-08-011-15/+87
| | | | | | | | | | and ThrottlePer100PrimsRezzed in [Attachments] in config This is an experimental setting to control cpu spikes when an attachment heavy avatar logs in or avatars with medium attachments lgoin simultaneously. It inserts a ms sleep specified in terms of attachments prims after each rez when an avatar logs in. Default is 0 (no throttling). "debug attachments <level>" changes to "debug attachments log <level>" which controls logging. A logging level of 1 will show the throttling performed if applicable. Also adds "debug attachments status" command to show current throttle and debug logging levels.
* Fix regression tests relating to agent transfer by making simulator use last ↵Justin Clark-Casey (justincc)2013-07-261-0/+9
| | | | week's SIMULATOR/0.1 protocol for now.
* Attachments module only registers when enabled. This enables alternative ↵Dan Lake2013-07-161-2/+4
| | | | attachments module implementations. All calls to Scene.AttachmentsModule are checking for null. Ideally, if we support disabling attachments then we need a null attachments module to register with the scene.
* remove pointless region handle paramter from IClientAPI.SendKillObject()Justin Clark-Casey (justincc)2013-05-091-1/+1
|
* Fix issue where objects removed via llDie() would not disappear for users ↵Justin Clark-Casey (justincc)2013-05-091-2/+2
| | | | | | | | looking in from neighbouring sims. This was because this particular code path (unlike user delete) only sent kills to root presences, for no apparent good reason. Added regression test for this case. This fixes http://opensimulator.org/mantis/view.php?id=6627
* minor: Remove unnecessary call to GetAttachments() in ↵Justin Clark-Casey (justincc)2013-04-021-2/+0
| | | | AttachmentsModule.UpdateUserInventoryWithAttachment()
* refactor: move the append magic number processing for attachments back up ↵Justin Clark-Casey (justincc)2013-03-291-6/+6
| | | | into RezSingleAttachmentFromInventory from RezSingleAttachmentFromInventoryInternal() done in commit 023faa2
* Check viewer 2/3 attachment calls against avatar appearance attachment data ↵Justin Clark-Casey (justincc)2013-03-292-21/+21
| | | | | | | | rather than actually attached objects By checking against the grid's Avatar data, we can ignore viewer side attachments but still initiate these calls simulator-side. Initiating simulator-side is always necessary for version 1 viewers. This is a further commit to resolve http://opensimulator.org/mantis/view.php?id=6581
* Fix bug where CHANGED_REGION and/or CHANGED_TELEPORT weren't firing for ↵Justin Clark-Casey (justincc)2013-03-291-1/+1
| | | | | | | | scripts in attachments. This was because the script resumption in AttachmentsModule was firing the attach event instead. Had to reinstate the code in 285bd3a do we can resume the scripts there instead, though the bug existed before its removal. This is to resolve http://opensimulator.org/mantis/view.php?id=6578
* Stop attempts to update/add existing attachments in user inventory when ↵Justin Clark-Casey (justincc)2013-03-282-21/+20
| | | | | | teleporting between regions. This appears to resolve issues on teleport where attachments disappear or become labelled as invalid within user inventory.
* Add "debug attachments" console command to allow highly verbose attachment ↵Justin Clark-Casey (justincc)2013-03-281-61/+109
| | | | | | logging to be switched on and off. Default is off.
* If the viewer has already rezzed any attachments itself, then ignore the ↵Justin Clark-Casey (justincc)2013-03-281-4/+10
| | | | | | simulator-side rez attachments call. This is a further effort to reduce v3 viewer race conditions where this call may clash with the viewer signalling attachment wearing from its current outfit folder.
* Move the simulator-side RezAttachments call on login to SP.MakeRootAgent ↵Justin Clark-Casey (justincc)2013-03-281-1/+1
| | | | | | | | with the other attachments code, using TeleportFlags.ViaLogin check to fire if necessary. This is to simplify the code (no tricky 'wasChild' signalling required) and to reduce the risk of a thread clash between simulator-side attaching (necessary for v1 viewers) and the viewer-side attaching the v3 viewers perform.
* On the later forms of teleport failure, tell the user if this was because ↵Justin Clark-Casey (justincc)2013-03-201-2/+8
| | | | | | | viewer couldn't/didn't connect with destination or if destination didn't signal teleport completion. Also adds regression test for the case where the viewer couldn't connect with the destination region. Also refactoring of regression test support code associated with entity transfer in order to make this test possible and the code less obscure.
* Prevent multiple instances of the same item ID being appended to an ↵Justin Clark-Casey (justincc)2013-03-191-2/+2
| | | | | | | | AvatarAppearance It looks like this was happening when AttachmentsModule.RezAttachments was doing a secondary set of each attachment to update with the asset ID (initially they only have the inventory ID). However, with multi-attach this was appending a second copy of the same attachment rather than updating the data that was already there. This commit requires both simulator and service to be updated.
* Process default attachment point in AttachObjectInternal before we check ↵Justin Clark-Casey (justincc)2013-03-191-27/+27
| | | | whether a worn object needs to displace an existing attachment on the same point if we are not using multi-attach.
* Fix tests for multiattachMelanie2013-03-182-6/+6
|
* Merge branch 'master' into newmultiattachMelanie2013-03-182-82/+305
|\ | | | | | | | | Conflicts: OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
| * Improve rejection of any attempt to reattach an object that is already attached.Justin Clark-Casey (justincc)2013-03-182-31/+194
| | | | | | | | This also adds/extends regression tests for wearing attachments directly for the scene and attempting to reattach/rewear already attached objects.
| * Fix recent regression where an item worn to an attachment point that was ↵Justin Clark-Casey (justincc)2013-03-182-89/+153
| | | | | | | | | | | | | | already occupied did not remove the previous attachment (current behaviour) Regression was commit ccd6f4 (Tue Mar 5 23:47:36 2013) Added regression test for this case.
| * minor: remove some completely unused string local vars added recently in ↵Justin Clark-Casey (justincc)2013-03-061-2/+0
| | | | | | | | commit 984faf2
* | Merge commit 'ccd6f443e1092cb410f565e921f7cf4dd8cd2dac' into newmultiattachMelanie2013-03-181-139/+167
|\ \ | |/ | | | | | | Conflicts: OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
| * Get attachment script state before taking sp.AttachmentsSyncLock() to avoid ↵Justin Clark-Casey (justincc)2013-03-051-140/+161
| | | | | | | | | | | | race conditions between closing agents and scripts that may be doing attachment manipulation. This is in an effort to resolve http://opensimulator.org/mantis/view.php?id=6557
* | Limit each attachment point to 5 items as per specMelanie2013-03-181-3/+13
| |
* | Multiattach, part 1Melanie2013-03-182-33/+31
|/ | | | | | | | | | | | Conflicts: OpenSim/Framework/AvatarAppearance.cs OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs OpenSim/Region/Framework/Scenes/Scene.cs OpenSim/Region/OptionalModules/Avatar/Attachments/TempAttachmentsModule.cs OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
* Implement a workaround solution for saving manual script state changes by ↵Justin Clark-Casey (justincc)2013-01-111-5/+19
| | | | | | | the user before logout instead of wrongly removing the script early. This workaround relies on the fact that a closing client goes inactive before the attachments derez calls happen. This reverts the change to remove scripts too early instead of stopping them, since the the two step stop then remove is necessary to execute the detach event.
* Save attachments on detach/exit if a contained script state has been changed.Justin Clark-Casey (justincc)2013-01-111-1/+17
| | | | | | | This involves making Attachments module listen for start/stop script changes. It also involves removing the script from the region on detach in the same manner as every other DeleteSceneObject() call rather than simply stopping it This is necessary tue to the bad assymetry of start and stop script triggers but it appears to be the correct behaviour anyway, as detached objects are completely gone from the sim. Not just in a state where their scripts have been stopped.
* minor: Add some doc to the extremely unhelpful 'fudge....' comment as to why ↵Justin Clark-Casey (justincc)2013-01-031-1/+4
| | | | we're deselecting the prim in code before scheduling an update on attachment
* Fix problem where object attached from ground often does not get attached ↵Justin Clark-Casey (justincc)2013-01-031-9/+1
| | | | | | | | properly. It seems this is happening because we send a kill for objects that are selected when attached. A code comment says that this is to get the client to deselect it, but v3 and v1 clients do this just fine without the kill. Aims to address http://opensimulator.org/mantis/view.php?id=6456
* Make "show object part" command correctly display script status.Justin Clark-Casey (justincc)2012-10-311-3/+3
| | | | | Uses new IEntityInventory.TryGetScriptInstanceRunning() Makes it clearer that TaskInventoryItem.ScriptRunning cannot be used as it is temporary and not updated.
* implementing osDropAttachment & osDropAttachmentAtSignpostMarv2012-10-021-1/+10
|
* Fire EventManager.TriggerOnAttach (and hence LSL attach event) when an ↵Justin Clark-Casey (justincc)2012-09-292-14/+18
| | | | | | | object is attached from the scene. Enables previously disabled regression test. Based on SingpostMarv's patch in http://opensimulator.org/mantis/view.php?id=6302 but I prefer a simpler approach that does not expose a resume scripts option right now.
* Extend attachment regression test to check for appropriate attach event firing.Justin Clark-Casey (justincc)2012-09-291-25/+49
| | | | | This reveals that the event is not being fired when an object is attached from ground, which is incorrect. This check is temporairly disabled.
* Guard against inventory get failures.Diva Canto2012-09-221-0/+3
|
* Correctly override and call base OpenSimTestCase.SetUp() method in ↵Justin Clark-Casey (justincc)2012-09-191-2/+2
| | | | | | GridConnectorsTests and ArchiverTests. Remove unrelated compile warning from AttachmentsModuleTests.
* Add --force flag to "kick user" console command to allow bypassing of recent ↵Justin Clark-Casey (justincc)2012-08-201-1/+1
| | | | | | | | | race condition checks. This is to allow a second attempt to remove an avatar even if "show connections" shows them as already inactive (i.e. close has already been attempted once). You should only attempt --force if a normal kick fails. This is partly for diagnostics as we have seen some connections occasionally remain on lbsa plaza even if they are registered as inactive. This is not a permanent solution and may not work anyway - the ultimate solution is to stop this problem from happening in the first place.
* Fix scripted detach of temp attachmentsMelanie2012-08-201-6/+2
|
* As per lindn spec, disable detach and drop for temp attachmentsMelanie2012-08-141-0/+8
|
* Lay some groundwork for temp attachments. Decouple attachments from inventory.Melanie2012-08-142-17/+30
|
* Remove bad using statement in AttachmentsModuleTests.Justin Clark-Casey (justincc)2012-07-241-2/+1
| | | | It seems that the mono 2.10.8.1 doesn't choke on this but for some reason 2.4.3 fails.
* extend regression TestRezScriptedAttachmentFromInventory() to check actual ↵Justin Clark-Casey (justincc)2012-07-241-3/+19
| | | | start of script rather than just the script status reported by SOG.ContainsScripts()
* extend regression TestDetachScriptedAttachementToInventory() to check ↵Justin Clark-Casey (justincc)2012-07-241-3/+25
| | | | correct running status on a re-rezzed attachment
* Change attachment handling to remove object from the scene first as perMelanie2012-07-231-29/+59
| | | | | | justincc's original work. Sample scripts before doing so. Also refactor some crucial common code and eliminate parameters that were only ever used with the same constant value.