Commit Graph

29 Commits (eb988d72bcde0040fa986d605af672e68536a6f4)

Author SHA1 Message Date
Diva Canto 00efc288d1 Don't copy assets to foreign asset servers when the objects are being deleted 2016-06-05 16:43:28 -07:00
Diva Canto 29aaf5564f Mantis #7720: AssetXferUploader was setting AssetID to UUID.Zero. Before that wouldn't matter (item would be a terminal object) but with the introduction of the item cache, it matters, because the object in the cache was being modified to have AssetID=UUID.Zero. Also keeping the item cache consistent when item properties change. 2015-09-11 09:48:51 -07:00
Diva Canto 869191a51d Small change to my previous commit: not so aggressive on the trigger, please. 2014-07-04 16:28:37 -07:00
Diva Canto 78c155cd12 Instrument the UDP path of creating assets so that it triggers an asset post for users with different asset servers 2014-07-04 15:56:09 -07:00
Melanie 5f4c4df227 Phase 1 of implementing a transfer permission. Overwrite libOMV's PermissionMask
with our own and add export permissions as well as a new definition for "All" as meaning "all conventional permissions" rather than "all possible permissions"
2013-03-26 03:40:06 +00:00
Melanie 776cc33541 Prevent items being destroyed by rename operations. Renaming of a wearable also
sends an asset transaciton but it is empty. So we can't ignore name data
when a transaction is present and can't treat every transaction as valid.

Conflicts:

	OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
2013-01-27 01:07:37 +00:00
Justin Clark-Casey (justincc) ddd9384b39 Fix very recently introduced race condition where a CreateNewItem outracing an UploadAsset request could throw an exception because m_asset did not yet exist.
This was accidentally introduced in 4fc0cfb
This commit also consistently removes the AssetXferUploader when the transaction completes, no matter if it completed on asset upload or item operation.
The amount of data being retained was small, since this was clothing/bodypart metadata in the asset rather than textures themselves.
2012-09-25 23:30:25 +01:00
Justin Clark-Casey (justincc) b96a53962b Comment out old m_storeLocal from AssetXferUploader.
This was only used if none of new item, update item or update task item had been set.
But since all transactions go through these paths this old code is redundant.
2012-09-25 23:13:45 +01:00
Justin Clark-Casey (justincc) eb5bec96e4 Insert transaction ID into AssetXferUploader constructor rather than at UploadAsset() to prevent item creation failure when NewInventoryItem thread reachs the object first.
This was preventing the previous race condition fix in 4fc0cfb from actually working.
This commit also removes some of the pointless transaction id checks - these conditions are already being enforced in AgentAssetsTransactions.
2012-09-25 22:54:20 +01:00
Justin Clark-Casey (justincc) 2f795e4fa6 Move UDP update task item code to AssetXferUploader to match existing create user item and update user item mechanisms
This is done for consistency and to allow removal or some access methods that increase code complexity.
However, this path has not been used for a long time, not even by LL 1.23 - viewers use caps http upload for this instead
2012-09-25 22:08:11 +01:00
Justin Clark-Casey (justincc) 4fc0cfba3c Fix occasional race condition failure when creating new clothing/body parts in the viewer or updating existing assets.
On creating these items, the viewer sends a UDP AssetUploadRequest followed by a CreateInventoryItem.
It was possible for the CreateInventoryItem/UpdateInventoryItem to occasionally outrace the AssetUploadRequest and fail to find an initialized Xfer object, at which point the item create would fail.
So instead we always set up a Xfer object on either the asset or inventory item update request.
This does not introduce a new race because code already exists to delay the item operation until the asset is uploaded if necessary (but this only worked if the xfer object already existed)
2012-09-25 21:35:39 +01:00
Justin Clark-Casey (justincc) c8304b7f84 Fix avatar parameter updating for viewer 3 and maybe 2.
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.
2011-09-23 02:59:33 +01:00
Melanie ea17b262a3 Convert the agent asset transactions module to a new style module.
Refactor to remove the property "MyScene" and the pointless circular
refs to the managing classes. Converted the module to a non-shared module.
Reformatted source for 80 columns. Removed the special role the module
had in the old loader.
2010-12-04 04:24:55 +00:00
Justin Clark-Casey (justincc) 1e8e98a07f Move code that allows llGiveInvetory() to move item into appropriate system folder up from connectors into Scene.Inventory.cs
This fixes the problem for all architectures (hg as well as local and grid) and means we don't have to dupe code between connectors.
Not ideal in that it becomes non-modular, but methods in Scene.Inventory.cs should eventually be modularized anyway.
2010-09-04 01:36:26 +01:00
John Hurliman df76e95aa2 Changed asset CreatorID to a string 2010-02-22 14:18:59 -08:00
John Hurliman 7665aad002 * Adds CreatorID to asset metadata. This is just the plumbing to support CreatorID, it doesn't modify database backends or OAR files to support storing/loading it 2010-02-22 13:27:17 -08:00
Melanie c033223c63 Merge branch 'master' into presence-refactor 2010-02-15 00:20:48 +00:00
Justin Clark-Casey (justincc) 802a969267 Fix http://opensimulator.org/mantis/view.php?id=4224
This resolves the problem where eyes and hair would turn white on standalone configurations
When a client receives body part information, for some insane reason or other it always ends up uploading this back to the server and then immediately re-requesting it.
This should have been okay since we stored that asset in cache.  However, the standalone asset service connector was not checking this cache properly, so every time the client made the request for the asset it has just loaded it would get a big fat null back in the face, causing it to make clothes and hair white.
This bug did not affect grids since they use a different service connector.
2010-02-12 21:32:03 +00:00
Diva Canto c5ea783526 OpenSim/Framework/Communications/Cache deleted. LibraryRootFolder deleted. 2010-01-11 07:51:33 -08:00
John Hurliman afef1ac191 Changing the AssetBase constructors to avoid initializing assets with an unknown asset type, and log an error if it ever does happen 2009-11-05 13:10:58 -08:00
Diva Canto 7aa54593e0 Redirected all calls to CachedUserProfile methods to the inventory service. Redirection of the RootFolder property is still todo. This compiles but probably inventory will be inconsistent. 2009-08-12 20:39:48 -07:00
Jeff Ames 840de6c036 Minor: Change OpenSim to OpenSimulator in older copyright headers and LICENSE.txt. 2009-06-01 06:37:14 +00:00
diva 5e4fc6e91e Heart surgery on asset service code bits. Affects OpenSim.ini configuration -- please see the example. Affects region servers only.
This may break a lot of things, but it needs to go in. It was tested in standalone and the UCI grid, but it needs a lot more testing.
Known problems: 
* HG asset transfers are borked for now
* missing texture is missing
* 3 unit tests commented out for now
2009-05-15 05:00:25 +00:00
Justin Clarke Casey f3c7298fc5 * Make it possible to store creator strings in user inventory items as well as UUIDs
* All existing functionality should be unaffected.
* Database schemas have not been changed.
2009-04-08 17:50:57 +00:00
Sean Dague 6323516a83 * Appearance patches suite: These patches are applied to allow libomv bots to wear outfits in the future.
This functionality will be upstreamed later.
** Fixed call of new AvatarAppearance without arguments, which caused bots look like clouds of gas
** Added a SendAvatarData in ScenePresence.SetAppearance, which is expected after SetAppearance is run
** Fixed AssetXferUploader: CallbackID wasn't being passed on on multiple packets asset uploads
** Set VisualParams in AvatarAppearance to stop the alien looking bot from spawning and now looks a little better.
*** TODO: Set better VisualParams value then 150 to everything
2009-03-25 20:15:46 +00:00
Melanie Thielker 863556f2cc Thank you, Snowdrop, for a patch that makes the callback ID parameter
usable. Applied with formatting changes, please don't introduce
K&R style indentations into OpenSim
Fixes Mantis #3190
2009-02-19 03:09:56 +00:00
Mike Mazur 76c0935ec7 - remove the Metadata property from AssetBase and return all previous
properties as before
- prefix private variables with m_ in AssetBase.cs
- related to Mantis #3122, as mentioned in
  https://lists.berlios.de/pipermail/opensim-dev/2009-February/005088.html
- all services will likely need to be upgraded after this commit
2009-02-17 01:36:44 +00:00
lbsa71 801da4346a * optimized usings. 2009-02-12 09:53:12 +00:00
Dr Scofield a89d097355 starting phase 2 of the OpenSim.Region.Environment commit: relocating
OpenSim.Region.Environment.Modules.Agent en bloc to OpenSim.Region.CoreModules
2009-02-09 09:16:15 +00:00