aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix avatar parameter updating for viewer 3 and maybe 2.Justin Clark-Casey (justincc)2011-09-231-2/+5
| | | | | | | | | 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.
* refactor: rename SOG/SOP.GetProperties() to SendPropertiesToClient() to ↵Justin Clark-Casey (justincc)2011-09-151-9/+9
| | | | | | reflect what it actually does This also makes it consistent with some other methods that send data to the client.
* Delay loading scripts until the scene has finished loadingOren Hurvitz2011-09-091-2/+22
|
* Remove pointless cluttering SOP.ParentGroup != null checks.Justin Clark-Casey (justincc)2011-09-011-33/+16
| | | | | 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.
* Related to #4689 - Adding missing null check for SceneObjectPartMakopoppo2011-08-271-0/+8
| | | | Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
* refactor: move Scene.Inventory.attachObjectAssetStore() into ↵Justin Clark-Casey (justincc)2011-08-241-84/+0
| | | | AttachmentsModule.AddSceneObjectAsAttachment()
* get rid of pointless grp null check in attachObjectAssetStore()Justin Clark-Casey (justincc)2011-08-241-73/+69
|
* minor: remove hardcoded region numbers with the region size constant and a ↵Justin Clark-Casey (justincc)2011-08-241-2/+2
| | | | currently hardcoded offset
* refactor: remove pointless AgentId argument from attachObjectAssetStore()Justin Clark-Casey (justincc)2011-08-241-1/+1
|
* Fix llAttachToAvatar()Justin Clark-Casey (justincc)2011-08-241-3/+11
| | | | | | 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.
* Remove manually permissions settings on all current library items so that ↵Justin Clark-Casey (justincc)2011-07-231-1/+4
| | | | | | | 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)
* Revert "Don't load current/next/everyone/base permissions from the library ↵Justin Clark-Casey (justincc)2011-07-231-4/+1
| | | | | | | | 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 667b54f5a2a04fa5a2859397868d270eab3913f1.
* Don't load current/next/everyone/base permissions from the library item xml ↵Justin Clark-Casey (justincc)2011-07-231-1/+4
| | | | | | 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.
* Add an async inventory details sender to respond to FetchInventory packets.Justin Clark-Casey (justincc)2011-07-011-0/+5
| | | | | | | 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.
* Don't follow inventory links of links.Justin Clark-Casey (justincc)2011-06-291-1/+4
| | | | | 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
* refactor: simplify redundant double containing folder checkJustin Clark-Casey (justincc)2011-06-291-2/+4
|
* If an inventory link target is in the same folder as the source, then don't ↵Justin Clark-Casey (justincc)2011-06-291-1/+6
| | | | | | recursively request that folder. Currently, this should never actually happen but certainly best to handle this case
* Fix give inventory tests to use different users rather than (accidentally) ↵Justin Clark-Casey (justincc)2011-06-041-161/+167
| | | | the same user. Extend TestGiveInventoryItem() to test giving back the same item.
* Moved CreateNewInventoryItem to the InventoryAccessModule in preparation for ↵Diva Canto2011-06-031-73/+1
| | | | supporting HG landmarks.
* refactor Scene.RezObject() to use AddNewSceneObject() rather than ↵Justin Clark-Casey (justincc)2011-05-211-13/+1
| | | | copy/pasting code with small differences
* don't throw a null reference if an inventory link target doesn't exist when ↵Justin Clark-Casey (justincc)2011-05-171-1/+4
| | | | we're inspecting in order to send the required inventory folders
* Fix adding/removing/replacing outfits in viewer 2Justin Clark-Casey (justincc)2011-05-141-18/+27
| | | | | | | | 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.
* Fix broken inventory links on viewer 2.Justin Clark-Casey (justincc)2011-05-131-2/+19
| | | | | 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
* Add a smidgen of method doc about the fact that item links reuse the asset ↵Justin Clark-Casey (justincc)2011-05-121-0/+4
| | | | id item slot
* Prevent viewer 2 from creating a duplicate outfit inventory links.Justin Clark-Casey (justincc)2011-05-121-2/+29
| | | | | | | 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".
* One more bug fix concerning library items that weren't being copied to ↵Diva Canto2011-05-061-1/+1
| | | | user's inventory. Also commented verbose debug message.
* Stop CHANGED_INVENTORY firing twice if a notecard is edited in prim.Justin Clark-Casey (justincc)2011-04-281-0/+4
| | | | | | 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.
* Fix a bug where physical objects rezzed with an initial velocity by script ↵Justin Clark-Casey (justincc)2011-04-281-0/+6
| | | | | | | | 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
* refactor: simplify bRayEndIsIntersection boolean set from ↵Justin Clark-Casey (justincc)2011-04-121-12/+1
| | | | RayEndIsIntersection byte
* If an object is rezzed directly from a prim inventory then give it the ↵Justin Clark-Casey (justincc)2011-04-121-1/+1
| | | | rotation it was stored with.
* Allow a null rotation to be passed in to RezObject so that we can control ↵Justin Clark-Casey (justincc)2011-04-121-7/+13
| | | | whether to use the serialized rotation or not. Not used yet.
* Fix (add) ability to rez objects by dragging them out of another prim's ↵Justin Clark-Casey (justincc)2011-04-121-5/+54
| | | | | | | | 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.
* Make CHANGED_OWNER work for deeding and god-mode in-world changeMelanie2011-04-031-0/+4
|
* Fix a few little thingsMelanie2011-02-271-0/+2
|
* Dont' trust the viewer! Fix a permission slam error caused by trustingMelanie2011-01-121-1/+0
| | | | the viewer too much.
* Fix direct item give permissionsMelanie2011-01-121-5/+39
|
* Partial permissions fix for boxed items.Melanie2011-01-121-0/+10
|
* Fix up a prior fix (refix the fixed fix :)Melanie2010-12-301-1/+1
|
* * Cleanup from a commit a while ago.Teravus Ovares (Dan Olivares)2010-12-231-4/+10
|
* Make prim inventories a bit more saneMelanie2010-12-211-17/+6
|
* WARNING: LOTS OF CONFIGURATION CHANGES AFFECTING PRIMARILY HG CONFIGS. Added ↵Diva Canto2010-11-251-0/+4
| | | | 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.
* add basic tests to check that under default permissions module owner can ↵Justin Clark-Casey (justincc)2010-11-221-2/+7
| | | | delete objects and that non-owners (who are also not administrators, etc.) cannot
* Added creator info across the board -- TaskInventoryItems and InventoryItems ↵Diva Canto2010-11-211-7/+13
| | | | | | 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).
* Plumb the path for multiple object deletesMelanie2010-10-061-35/+9
|
* Restrict inventory items added in a transaction to folder belongingMelanie2010-09-271-0/+6
| | | | to the connected client.
* Refactor script create permission into the perms moduleMelanie2010-09-211-10/+0
|
* Changed SceneObjectGroup to store parts with the fast and thread-safe ↵John Hurliman2010-09-161-6/+2
| | | | MapAndArray collection
* Formatting cleanup.Jeff Ames2010-09-121-6/+6
|
* First pass at cleaning up thread safety in EntityManager and SceneGraphJohn Hurliman2010-09-101-1/+2
|
* Fix deletion persistence when freshly delinked prims are removedJustin Clark-Casey (justincc)2010-09-071-6/+1
| | | | | | | | | | 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.