aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-05-19Dump OpenSim 0.9.0.1 into it's own branch.onefang1-19/+19
2016-11-03Initial update to OpenSim 0.8.2.1 source code.David Walter Seikel1-8/+2
2012-05-23Fix bug where an avatar that had an object they owned attached through ↵Justin Clark-Casey (justincc)1-1/+1
llAttachToAvatar() or osForceAttachToAvatar() would wrongly have next permissions come into play when they detached that object and rezzed it in scene. This is because the attachments module code was setting the 'object slam' bit by using PermissionMask.All Solution here is to route the attachment item creation call through the existing inventory code in BasicInventoryAccessModule rather than copy/pasted code in AttachmentsModule itself.
2012-04-28Comment out debug [ASYNC DELETER] messages for now.Justin Clark-Casey (justincc)1-5/+5
2012-02-10Fix bug where somebody taking a copy of an object they didn't own that was ↵Justin Clark-Casey (justincc)1-1/+2
rezzed before the region was restarted would wrongly place the copy in the object owner's inventory. Addresses http://opensimulator.org/mantis/view.php?id=5825
2011-11-06Make the AsyncSceneObjectDeleter send a list of kills. This will make largeMelanie1-1/+7
marquee-selected deletions of single prims or small link sets nearly instantaneous
2011-09-26Add en_US culture setting to the async delete to inventory thread, to avoid ↵Justin Clark-Casey (justincc)1-0/+5
any issues with float serialization with machines set to non en_US locales. Doing this to see if addresses inventory object deserialization problems in http://opensimulator.org/mantis/view.php?id=5708, though if it does I'm really surprised not to have seen it before now. Really need to go through and systematically set the culture for every timer and change all BeginInvoke calls to FireAndForget instead. But don't want to do something like that this close to a release.
2011-04-18refactor: rename DeleteToInventory() to CopyToInventory()Justin Clark-Casey (justincc)1-1/+2
DeleteToInventory() is misleading - it is the caller that decides whether to delete or not
2011-04-03Implement taking of coalesced objects.Melanie1-2/+2
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.
2010-09-15rename SceneObjectGroup.DeleteGroup() to DeleteGroupFromScene() to improve ↵Justin Clark-Casey (justincc)1-1/+1
code readability
2010-09-07Fix deletion persistence when freshly delinked prims are removedJustin Clark-Casey (justincc)1-8/+13
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-07Fix deletion persistence when freshly delinked prims are removedJustin Clark-Casey (justincc)1-8/+13
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-06-01Continuing refactor. Refactor DeRezObject to deal with multiple objectsMelanie Thielker1-6/+12
2010-01-30* HGScene is no more.Diva Canto1-1/+4
* Moved a few key inventory access methods from Scene.Inventory to an IInventoryAccessModule module
2009-11-26Remove the old (Remoting) region crossing code. Fix the new code toMelanie1-5/+0
pass script state and assembly again properly. Reintroduce respecting tht TrustBinaries flag. Changes the interregion protocol! No version bump because it was broken anyway, so with a version mismatch it will simply stay broken, but not crash. Region corssing still doesn't work because there is still monkey business with both rezzed prims being pushed across a border and attached prims when walking across a border. Teleport is untested by may work.
2009-10-07Revert "Rewrote parts of the code that were double-locking different ↵Melanie1-20/+16
objects. This is about half of the code base reviewed." This reverts commit e992ca025571a891333a57012c2cd4419b6581e5.
2009-10-07Revert "Merging in diva's locking fixes"Melanie1-20/+16
This reverts commit 832cc685138b2244529f10b54b373c34adb4a633.
2009-10-06Rewrote parts of the code that were double-locking different objects. This ↵Diva Canto1-16/+20
is about half of the code base reviewed.
2009-10-01Formatting cleanup.Jeff Ames1-11/+11
2009-09-09* Lock timers when Calling Start() and Stop() when the Thread Context is ↵Teravus Ovares (Dan Olivares)1-2/+4
murky. This affects Mono only.
2009-08-04Add plumbing for the SceneObjectDeleter to wait for the script engine toMelanie1-3/+8
allow final deletion of objects. Meant to support the attach(NULL_KEY) event,
2009-06-01Minor: Change OpenSim to OpenSimulator in older copyright headers and ↵Jeff Ames1-1/+1
LICENSE.txt.
2009-02-12* optimized usings.lbsa711-1/+0
2009-02-06This changeset is the step 1 of 2 in refactoringDr Scofield1-1/+1
OpenSim.Region.Environment into a "framework" part and a modules only part. This first changeset refactors OpenSim.Region.Environment.Scenes, OpenSim.Region.Environment.Interfaces, and OpenSim.Region.Interfaces into OpenSim.Region.Framework.{Interfaces,Scenes} leaving only region modules in OpenSim.Region.Environment. The next step will be to move region modules up from OpenSim.Region.Environment.Modules to OpenSim.Region.CoreModules and then sort out which modules are really core modules and which should move out to forge. I've been very careful to NOT BREAK anything. i hope i've succeeded. as this is the work of a whole week i hope i managed to keep track with the applied patches of the last week --- could any of you that did check in stuff have a look at whether it survived? thx!
2008-12-17* Implement 'Save Object Back to My Inventory'. On the Linden client this ↵Justin Clarke Casey1-5/+5
is in the Tools menu available when editing an object * This facility allows you to save changes to an object that you've rezzed into a region back into their original inventory item without having to take a copy of the rezzed object.
2008-11-28* refactor: Replace derez destiation magic numbers with an enumerationJustin Clarke Casey1-5/+5
2008-11-21* Extend sog delete to inventory test to crank the normally async sog ↵Justin Clarke Casey1-1/+5
deleter by hand * After the crank, assert that the object has now been removed from the scene
2008-11-21* Largely revert the last revision and improve on the previous way of doing ↵Justin Clarke Casey1-2/+10
things * Deleting the object before the async to inventory is bad since if OpenSim crashes (or is shutdown!) in the time inbetween, then the object is lost * Also now delete the object from the scene only after it has gone to inventory - in the old way there was still a race condition * This is still not ideal since the 'deleted' object remains in the scene and probably could be manipulated. But this is better than the alternative
2008-11-21* On delete to inventory, actually remove the group from the scene before ↵Justin Clarke Casey1-6/+1
the async stage. * Last time I accidentally left the existing code in place that merely wiped the group from the client (but not the scene) * Put in an incomplete 'delete object o inventory' test to assert that this happens
2008-11-19Ensure that the physics representation of a deleted object is also removedMelanie Thielker1-1/+1
2008-11-19Fix deleting object that have been persisted already from the DBMelanie Thielker1-0/+4
2008-11-17* Make sure that deleted objects do not send further object updates to the ↵Justin Clarke Casey1-1/+1
client
2008-11-17* Eliminate SOG.FakeDeleteGroup() since it is now identical with ↵Justin Clarke Casey1-1/+1
DeleteGroup() (except that is didn't lock the parts, which was a potential race condition) * Removed fake delete code from LSL_Api.SetFlexi - this code was never activiated anyway and didn't appear to make much sense on the surface
2008-11-17* minor: eliminate propogation of now unused permissionToDelete flagJustin Clarke Casey1-6/+2
2008-11-17* Fix probable partial breakage of delete to inventory in last commitJustin Clarke Casey1-11/+9
* Not nulling out parts and the root part allows the code to be simplified
2008-11-17* Stop nulling SOG.m_rootPart and parts on object deletionJustin Clarke Casey1-1/+1
* This renders RootPart == null checks useless - the replacement is to check SOG.IsDeleted. However, in many cases this will not be necessary since updates to deleted parts will not be sent to the client * This should remove any remaining race conditions where an object is deleted while another thread is yet to obtain the root part to perform some operation * Doing this is probably a necessary prerequisite to moving to a model without a separate SOG and SOP * Unfortunately it's not possible to eliminate all RootPart == null checks since in some contexts it is currently used to check whether an object was created successfully
2008-11-11* Put an Enabled switch on the async object deleter for future testing purposesJustin Clarke Casey1-3/+11
2008-10-22And fix itMelanie Thielker1-1/+1
2008-10-22Prevent an object with a null RootPart in delete queue from stoppingMelanie Thielker1-4/+13
the deleting of other, valid objects
2008-10-18Megapatch. :) Fix skull attachment editing. Streamline Object terse updates.Melanie Thielker1-9/+8
Add rezzing time to objects. Add Object return and traffic fields to land database. Add plumbing for auto return. Implement auto return. Contains a migration. May contain nuts.
2008-09-29* minor: forgot this small tidy in the last checkinJustin Clarke Casey1-2/+1
2008-09-29* minor: tidy up async sog deleterJustin Clarke Casey1-19/+18
2008-09-29* refactor: move asynchronous scene object deletion to inventory queueing ↵Justin Clarke Casey1-0/+146
out to a separate class