aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* More on HG inventory transfers. Move the FireAndForget higher up.Diva Canto2012-03-091-1/+1
|
* Restore the taskItem null check that I accidentally blatted in 5397a6dJustin Clark-Casey (justincc)2012-02-211-0/+9
| | | | This is a valid check because the caller could supply an invalid uuid.
* Fix problem with dragging child part inventory item to user inventory.Justin Clark-Casey (justincc)2012-02-211-11/+1
| | | | | This fixes the problem by fixing the permissions module to look at root part permissions rather than having to do this for every caller. Resolves http://opensimulator.org/mantis/view.php?id=5569
* Revert "Fix:Cannot drag inventory from child prim into inventory ↵Justin Clark-Casey (justincc)2012-02-211-8/+4
| | | | | | | | http://opensimulator.org/mantis/view.php?id=5569" This reverts commit 15ce73caca9ea6448e34b95d344cbbf5c9507f6d. As per the COMMENTS in http://opensimulator.org/mantis/view.php?id=5569, I was going to fix this in a more general way.
* Fix:Cannot drag inventory from child prim into inventory ↵PixelTomsen2012-02-211-4/+8
| | | | http://opensimulator.org/mantis/view.php?id=5569
* Add new and updated script eventsRobert Adams2012-02-171-0/+12
|
* Fix: Object owned by the group does not return to the last owner ↵PixelTomsen2012-02-161-1/+1
| | | | http://opensimulator.org/mantis/view.php?id=5404
* When an asset is uploaded (e.g. a mesh) set individual copy/move/transfer ↵Justin Clark-Casey (justincc)2012-02-101-0/+9
| | | | | | | | permissions, not PermissionMask.All Setting PermissionMask.All will cause next permissions to replace current permissions when the object is rezzed, since bit 4 will be set. This is not correct behaviour for a freshly uploaded mesh. Freshly rezzed in-world prims also do not have bit 4 set (don't yet know exactly what this is). Should resolve http://opensimulator.org/mantis/view.php?id=5651
* Stop a scene object from attempting to link with itself (which results in an ↵Justin Clark-Casey (justincc)2012-02-081-2/+19
| | | | | | exception and constant complaints in v3 viewers). Aims to address http://opensimulator.org/mantis/view.php?id=5878
* Only look for an uploaded transactional asset in Scene.UpdateTaskInventory ↵Justin Clark-Casey (justincc)2012-02-041-20/+19
| | | | | | | | if we have been passed a non-zero transaction ID. This resolves the recent regression from deeb728 where notecards could not be saved in prim inventories. This looks like a better solution than deeb728 since only non-caps updates pass in a transaction ID. Hopefully resolves http://opensimulator.org/mantis/view.php?id=5873
* Comment out xfer section in Scene.UpdateTaskInventory() which was causing ↵Justin Clark-Casey (justincc)2012-01-281-13/+20
| | | | | | | | | spurious errors and "script saved" messages when script properties were changed. Viewers since at least Linden Lab 1.23 use the script upload capability to save script changes. It's unknown whether the commented out code was working for very old viewers or not. Code is commented out to reduce complexity and so that useful error messages don't need to be removed. If there is a substantial population using extremely old viewers that can't upgrade to a newer version 1 viewer (e.g. 1.23) or similar TPV then this can be revisited.
* Add basic TestAddScript() regression testJustin Clark-Casey (justincc)2012-01-261-0/+11
|
* refactor: change RezScriptFromAgentInventory(), RezNewScript() and ↵Justin Clark-Casey (justincc)2012-01-261-20/+30
| | | | | | AddInventoryItem() to accept an agent id rather than a full IClientAPI. This stops some code having to make spurious client == null checks and reduces regression test complexity.
* refactor: decompose most of RezScript() into RezScriptFromAgentInventory(), ↵Justin Clark-Casey (justincc)2012-01-251-79/+95
| | | | RezNewScript() and rename one RezScript() to RezScriptFromPrim()
* If dragging a script that is no copy from prim inventory into agentMelanie2012-01-061-16/+39
| | | | | inventory, stop it first in scene. If deleting from prims, move to trash rather then making it poof.
* Move client id check in Scene.Inventory.cs:UpdateInventoryItemAsset so that ↵Justin Clark-Casey (justincc)2011-12-091-4/+6
| | | | | | it doesn't trigger an exception if the item hasn't been found. In this situation we will now put out a slightly more meaningful log error message instead.
* Stop an exception being thrown and a teleport/border cross failing if the ↵Justin Clark-Casey (justincc)2011-11-221-10/+3
| | | | | | | desintation sim has no active script engines. This involves getting IScene.RequestModuleInterfaces() to return an empty array (as was stated in the method doc) rather than an array containing one null entry. Callers adjusted to stop checking for the list reference being null (which never happened anyway)
* 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
|