| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
handlers for attachments to call public interface and rearranged module file into sections
|
|
|
|
| |
converted back and forth between ScenePresence and IClientAPI. More to be done still.
|
| |
|
|
|
|
|
|
| |
AvatarFactoryModule.Initialize()
This is never null
|
|
|
|
|
|
| |
allow attachments to be temporarily turned off.
This is for debugging purposes. Defaults to Attachments Enabled
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
in neighbouring sims) with HG lure active
It turns out that the HG lure module was setting up a pending lure when it intercepted the instant message on its way out to the target avatar.
However, an IM would only be sent if the user was remote, so it would not be set up for users on the same sim or in an immediate neighbour.
We fix this by adding the pending lure when the message goes out and ignoring a duplicate pending lure add if it goes to out via IM.
Hopefully addresses http://opensimulator.org/mantis/view.php?id=5690
|
|
|
|
|
|
| |
that same height in ScenePresence.
This prevents unnecessary work in the ODE module, though possibly that should be checking against same size sets itself
|
|
|
|
|
|
|
|
|
|
|
|
| |
entries to make a newly created user appear as a non-cloud on viewer 2
Viewer 2 no longer contains the default avatar assets (i.e. "Ruth") that would appear if the user had insufficient body part/clothing entries.
Instead, avatars always appear as a cloud, which is a very bad experience for out-of-the-box OpenSim.
Default is currently off. My intention is to switch it on for standalone shortly.
This is not particularly flexible as "Ruth" is hardcoded, but this can change in the future, in co-ordination with the existing RemoteAdmin capabilities.
Need to fix creation of suitable entries for users created as estate owners on standalone.
Avatars still appear with spooky empty eyes, need to see if we can address this.
This commit adds a "Default Iris" to the library (thanks to Eirynne Sieyes from http://opensimulator.org/mantis/view.php?id=1461) which can be used.
|
| |
|
|
|
|
| |
all parts, now that we're performing this check in UpdateKnownItem() for other purposes
|
|
|
|
| |
itemID is always taken taken from the group's stored item id, and agentID is never used.
|
|
|
|
| |
It's not appropriate for code outside the attachments module to call this.
|
| |
|
|
|
|
|
|
|
|
| |
Viewer 2/3 will sometimes attempt to rewear attachments, even though they have already been attached during the main login process.
This change ignores those attempts.
This stops script failures during login, as the rewearing was racing with the script startup code.
It might also help with attachments being abnormally put into deleted state.
Hopefully resolves some more of http://opensimulator.org/mantis/view.php?id=5644
|
|
|
|
|
|
|
|
|
| |
itemID) for now
As far as I can see, this is only invoked by a PUT request to ObjectHandlers, which is not being used anyway.
Invoking attachments code at this point is probably inappropriate since it would still be invoked when the client entered the scene.
Being commented to simplify analysis of attachments issues. Can be uncommented when in use.
Also, small tweak to lock and log removal of a SOG from the SceneObjectGroupsByLocalPartID collection in SceneGraph.GetGroupByPrim() if an inconsistency is found.
|
|
|
|
|
|
|
|
|
| |
IScenePresence.AttachmentsSyncLock object
Attach and detach packets are processed asynchronously when received from a viewer.
Bugs like http://opensimulator.org/mantis/view.php?id=5644 indicate that in some situations (such as attaching/detaching entire folders of objects at once), there are race conditions between these threads.
Since multiple data structures need to be updated on attach/detach, it's not enough to lock the individual collections.
Therefore, this commit introduces a new IScenePresence.AttachmentsSyncLock which add/remove operations lock on.
|
|
|
|
| |
attachment and npc tests
|
|
|
|
| |
variables in different contexts
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
rather than abort.
When a user logs in, the attachment item ids are pulled from persistence in the Avatars table. However,
the asset ids are not saved. When the avatar enters a simulator the attachments are set again. If
we simply perform an item check then the asset ids (which are now present) are never set, and NPC attachments
later fail unless the attachment is detached and reattached.
Hopefully resolves part of http://opensimulator.org/mantis/view.php?id=5653
|
|
|
|
| |
IAttachmentsModule.RezSingleAttachmentFromInventory() with the updateInventoryStatus switch, since this is never called with false
|
| |
|
|
|
|
| |
The second was already being filtered out so this has no user level effect
|
|
|
|
|
|
|
| |
This was happening because we were using the source avatar's item IDs in the clone appearance.
Switch to using the asset IDs of attachments instead for NPCs.
The InventoryAccessModule and AttachmentModule had to be changed to allow rezzing of an object without an associated inventory item.
Hopefully goes some way towards resolving http://opensimulator.org/mantis/view.php?id=5653
|
|
|
|
|
|
| |
acceptence message arrives, then don't send them an inventory update.
Doing so causes a NullReferenceException
|
|
|
|
| |
It's never possible for SOG to have no RootPart, except in the first few picosends of the big bang when it's pulled from region persistence or deserialized
|
| |
|
|
|
|
| |
SP.AddToPhysicalScene()
|
|
|
|
|
|
|
| |
The approach here, as in other parts of OpenSim, is to return a copy of the list rather than the attachments list itself
This prevents callers from forgetting to lock the list when they read it, as was happening in various parts of the codebase.
It also improves liveness.
This might improve attachment anomolies when performing region crossings.
|
| |
|
|
|
|
| |
remove some now duplicated method doc
|
| |
|
|
|
|
| |
This adds an incomplete IScenePresence to match ISceneEntity
|
| |
|
|
|
|
| |
If the inventory service is configured not to allow deletion then these will not disappear from inventory
|
|
|
|
|
| |
Assets have to be marked non-local as well as non-temporary to persist. This is now done.
Hopefully addresses http://opensimulator.org/mantis/view.php?id=5660
|
|
|
|
| |
stored in the root part's state field.
|
| |
|
|
|
|
| |
pointless duplication of identical values
|
|
|
|
| |
This does a tiny bit to reduce code complexity, memory requirement and the cpu time of pointlessly setting this field to the same value in every SOP
|
|
|
|
| |
AttachmentsModule.DetachSceneObjectToGround() and remove redundant code
|
|
|
|
| |
object group direct
|
| |
|
| |
|
| |
|
|
|
|
| |
AttachmentsModule.DetachSingleAttachmentToInv()
|
|
|
|
| |
and change text to better indicate what it's saying
|
|
|
|
| |
accidentally stopped normal script state persistence on login/logout and attach/detach
|
|
|
|
|
|
| |
both non-phantom and flagged as physical.
As per Melanie
|