aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/Avatar/Attachments (follow)
Commit message (Collapse)AuthorAgeFilesLines
* minor: In AttachmentsModule.UpdateKnownItem use the existing ↵Justin Clark-Casey (justincc)2015-01-171-3/+2
| | | | IInventoryAccessModule reference that other methods are already using rather than fetching its own copy.
* Fix recent regression where a race condition meant SP.MakeRootAgent() would ↵Justin Clark-Casey (justincc)2014-12-171-5/+11
| | | | | | sometimes look to start attachment scripts before ETM.HandleIncomingSceneObject() had added them. Probably a regression since ghosts branch merge on Nov 26 2014
* Fix a regression where objects crossing regions in the same simulator (on ↵Justin Clark-Casey (justincc)2014-12-101-0/+7
| | | | | | | | | | their own or as attachments) with AppDomainLoading = false would create the new state in the source region area rather than the dest. This was beause the code was finding the script DLL compiled for the source region as everything is in the same appdomain and using this as the location for the destination script state, etc. This resolves the regression by passing the proper destination separately from the DLL retrieved. Probably a regression since commit d7b92604 (11 July 2014). Added regression test for this case. At least partly addresses http://opensimulator.org/mantis/view.php?id=7278
* refactor: consistently put all test classes in the OpenSim.Tests.Common ↵Justin Clark-Casey (justincc)2014-11-251-1/+0
| | | | | | package rather than some in OpenSim.Tests.Common.Mock the separate mock package was not useful and was just another using line to always add
* minor: correct console response when setting attachments logging levelJustin Clark-Casey2014-11-101-1/+1
|
* Don't unnecessarily remove from backup objects that were not directly ↵Justin Clark-Casey (justincc)2014-10-022-5/+18
| | | | | | | attached from the scene. These are never in region backup in the first place since recent 11830c43 Extend regression test to check backup status.
* Fixed a problem with detaching attachments in situations where the user's ↵Diva Canto2014-05-221-7/+2
| | | | asset server is not the same as the simulator's asset server. Unfortunately this still continues to be wasteful -- new assets are created every time an attachment is detached, but the process of storing the new asset goes through the InventoryAccess module, which does all sorts of checks regarding the users' inventory.
* Fix issue where only one of multiple attachments on the same attachpoint for ↵Justin Clark-Casey (justincc)2014-05-011-0/+7
| | | | | | | | NPCs would be seen by other viewers. It appears that at least Singularity 1.8.5 (but probably others) rely on attachment FromItemIDs being different to display more than one. This commit resolves this by generating random IDs instead of always using UUID.Zero for NPCs. Resolves http://opensimulator.org/mantis/view.php?id=7110
* Fix negative stat for Active ScriptsDev Random2014-03-221-2/+3
| | | | Signed-off-by: Michael Cerquoni <nebadon2025@gmail.com>
* minor: Use default(UUID) in rez attachment failure error logging rather than ↵Justin Clark-Casey (justincc)2013-11-151-1/+1
| | | | | | | (UUID)null Patch from http://opensimulator.org/mantis/view.php?id=6843 Thanks Kira.
* 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()
* Preserve attachment point & position when attachment is rezzed in worldAleric Inglewood2013-09-221-1/+17
| | | | | | | | | | Patch taken from http://opensimulator.org/mantis/view.php?id=4905 originally by Greg C. Fixed to apply to r/23314 commit ba9daf849e7c8db48e7c03e7cdedb77776b2052f (cherry picked from commit 4ff9fbca441110cc2b93edc7286e0e9339e61cbe)
* 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.