Kevin Houlihan
923f2459cf
Passwords could be revealed in console by pressing backspace.
...
Pressing backspace causes hidden input (such as passwords) to be revealed on the console. The echo state was not being taken into account when handling a backspace key press.
2011-09-16 19:25:38 +01:00
Chris Hart
d4043c084a
MSSQL Bug fix in user account retrieval, plus migrations for FriendsStore and InventoryStore
2011-09-16 19:09:46 +01:00
Kevin Houlihan
1458fab82c
Reattaching a region was failing if the estate name had not changed (issue 5035).
...
Using the RemoteAdmin API to close then recreate a region would fail if the estate name had not changed. If the estate name /was/ changed then the existing estate would be renamed rather than a new one being created. The problem really arose from a lack of distinction in the data storage layer between creating new estates and loading existing ones.
2011-09-16 18:50:25 +01:00
Justin Clark-Casey (justincc)
9046651583
Pass any region scope through to the CreateUser() method
2011-09-16 00:36:43 +01:00
Justin Clark-Casey (justincc)
4ae4b14b5d
refactor: move estate owner setup code into separate method
2011-09-16 00:24:23 +01:00
Justin Clark-Casey (justincc)
522d6261f1
Correctly create a freshly created estate owner's default items and avatar entries on standalone if applicable.
2011-09-16 00:12:12 +01:00
Justin Clark-Casey (justincc)
c4efb97d49
Write code to create minimum necessary body parts/clothing and avatar 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.
2011-09-15 22:59:29 +01:00
Justin Clark-Casey (justincc)
de19dc3024
refactor: rename SOG/SOP.GetProperties() to SendPropertiesToClient() to reflect what it actually does
...
This also makes it consistent with some other methods that send data to the client.
2011-09-15 18:58:58 +01:00
Justin Clark-Casey (justincc)
a4cc5f628f
Only bother to create an inventory xfer file if there are any items in a prim inventory
2011-09-15 18:42:10 +01:00
Justin Clark-Casey (justincc)
8fb3e71b14
Shuffle order of code in invnetory connector GetFolderContent() calls to avoid a possible race condition
2011-09-15 18:36:22 +01:00
Justin Clark-Casey (justincc)
42f1b88eb2
If a prim inventory becomes empty through deletion, send an empty xfer file name rather than one that references a metadata file containing only the folder object.
...
If we do this, then viewer 3 crashes when we try and rez a script directly in an attachment's prim inventory.
Sending an empty file name was already being done if the prim's inventory had never been touched.
Now we always do that if there are no items in that inventory.
Hopefully addresses the remaining point in http://opensimulator.org/mantis/view.php?id=5644
2011-09-15 18:13:36 +01:00
Tom
e15917f465
Fixed a movement regression - Kitto's jump code is no longer needed (plus it's an eyesore)
2011-09-14 19:34:03 -07:00
Tom
1129b80629
Fix a rather stupid VS warning "The operation overflows at compile time in checked mode" - doesn't make much sense to me, but for some reason it doesn't like 256 - 6 when 256 is a constant...
2011-09-14 19:31:55 -07:00
Tom
5484c9b585
Bring us up to date.
2011-09-14 19:11:32 -07:00
Tom
cda4cd6b55
Merge fixes, and fix the build
2011-09-14 18:46:42 -07:00
Justin Clark-Casey (justincc)
bd991fc95f
Don't try and delete attachments for child agent close
2011-09-13 22:54:50 +01:00
Justin Clark-Casey (justincc)
1084d8f6a2
Remove code from DetachSingleAttachmentToInv() that sets group changed on all parts, now that we're performing this check in UpdateKnownItem() for other purposes
2011-09-13 22:39:06 +01:00
Justin Clark-Casey (justincc)
61affee814
remove redunant itemID and agentID arguments from UpdateKnownItem().
...
itemID is always taken taken from the group's stored item id, and agentID is never used.
2011-09-13 22:33:15 +01:00
Justin Clark-Casey (justincc)
2d62484f11
Remove UpdateKnownItem() from IAttachmentsModule.
...
It's not appropriate for code outside the attachments module to call this.
2011-09-13 22:27:33 +01:00
Justin Clark-Casey (justincc)
62b3e74bc5
minor: remove redundant grp != null check from AM.UpdateKnownItem()
2011-09-13 22:24:33 +01:00
Justin Clark-Casey (justincc)
8880aea728
Stop attempts to rewear already worn items from removing and reattaching.
...
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
2011-09-13 22:13:58 +01:00
Justin Clark-Casey (justincc)
618277e797
Comment out attachments code in Scene.IncomingCreateObject(UUID userID, UUID 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.
2011-09-13 20:25:32 +01:00
Justin Clark-Casey (justincc)
df73833a2c
stop the duplicate remove of the root part ids from the full part and local part indexes in SG.DeleteSceneObject()
...
this is unnecessary because the parts array iterated through contains the root part as well as the non-root parts
2011-09-13 18:11:13 +01:00
Justin Clark-Casey (justincc)
f09a90d8a7
extend TestGetSceneObjectByPartLocalId() to test state after scene object deletion
2011-09-13 18:08:05 +01:00
Justin Clark-Casey (justincc)
07ba28f1de
In SG.AddSceneObject(), stop unnecessarily adding the root part to object indexes sepearately from the other parts.
...
The SOG.Parts property contains the root part as well as the non-root parts
2011-09-13 17:56:02 +01:00
Justin Clark-Casey (justincc)
c14f0a22d4
Add new TestGetSceneObjectByPartLocalId() for retrieving a scene object via the local id of one of its parts
2011-09-13 17:52:10 +01:00
Justin Clark-Casey (justincc)
88bd71b978
improve TestAddSceneObject() to test a multi-part object rather than a single-part
2011-09-13 17:40:39 +01:00
Justin Clark-Casey (justincc)
306af9934a
In an object return message, send a null-terminated empty string in binary bucket to prevent a viewer 3 crash.
...
This is the message sent to the client when the object is returned.
We were sending byte[0] in the binary bucket. This didn't kill viewer 1 but did terminate viewer 3 (don't know about viewer 2).
So sending "\0" instead.
This is to address http://opensimulator.org/mantis/view.php?id=5683
2011-09-13 17:13:42 +01:00
Justin Clark-Casey (justincc)
dea0935361
eliminate redundant SP.m_regionInfo since it always has the scene.
...
We were already referencing through the scene in some places.
2011-09-12 23:00:15 +01:00
Justin Clark-Casey (justincc)
62b2450529
remove the unused SP.initializeScenePresence()
2011-09-12 22:54:54 +01:00
Justin Clark-Casey (justincc)
56cd7d9685
stop the redundant passing in of RegionInfo to SceneGraph, since the Scene is always passed in at the same time.
2011-09-12 22:51:56 +01:00
Justin Clark-Casey (justincc)
00f8946bd4
minor: if the script engine fails to find a prim for a script, also print out that prim's local id in the error message.
2011-09-12 22:44:14 +01:00
Justin Clark-Casey (justincc)
294120c9d3
comment out some recent terrain texture logging
2011-09-12 22:26:04 +01:00
Justin Clark-Casey (justincc)
ea0f78c971
Start locking entire add/remove operations on an 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.
2011-09-12 21:57:22 +01:00
Justin Clark-Casey (justincc)
dab6387bba
lock AvatarAppearance.m_attachments when we use it
...
This is partly to address http://opensimulator.org/mantis/view.php?id=5644 , though something more thorough is needed.
2011-09-12 21:05:26 +01:00
Oren Hurvitz
7f318277f1
When creating an OAR, optionally exclude objects according to their permissions
2011-09-12 20:09:24 +01:00
Justin Clark-Casey (justincc)
517932722b
minor: put <remarks> tags around some method doc
2011-09-12 20:06:09 +01:00
Justin Clark-Casey (justincc)
728fd0b1b8
lock attachments when enumerating through them in ScenePresence.CopyTo().
...
May have some effect on http://opensimulator.org/mantis/view.php?id=5644
2011-09-10 01:09:17 +01:00
Justin Clark-Casey (justincc)
9c32b131fd
Add extra log information when attachments fail validation
2011-09-10 00:57:52 +01:00
Justin Clark-Casey (justincc)
7531851bec
reinstate the validation logging on teleport. A 'fail' of validation still doesn't prevent the actual teleport.
2011-09-10 00:45:50 +01:00
Justin Clark-Casey (justincc)
de28c9cd24
Stop the UserManagementModule logging every user it adds for now
2011-09-10 00:23:52 +01:00
Oren Hurvitz
1dd904b78e
Delay loading scripts until the scene has finished loading
2011-09-09 23:01:05 +01:00
Kevin Houlihan
7cafc2e46e
Added a check to the CreateRegion method of the RemoteAdmin module that the specified user exists.
...
A meaningful exception message is returned if the user is not found. Previously it was returning "Object not set..."
2011-09-09 22:59:00 +01:00
Micheil Merlin
28961dd1cf
llSetPrimitiveParams Prim type params precision errors
2011-09-09 22:53:45 +01:00
Justin Clark-Casey (justincc)
bea2e0f32b
Comment out the part of the load oar code that zeroes out prim sit target orientations and positions.
...
The warning about these causing problems is very old and may no longer apply.
Hopes to fix http://opensimulator.org/mantis/view.php?id=5680
2011-09-09 22:50:54 +01:00
Justin Clark-Casey (justincc)
655935db49
Use a copy of the inventory items list to register users in the thread started by GetFolderContent(), to protect ourselves against callers modifying lists
...
Hopefully this addresses http://opensimulator.org/mantis/view.php?id=5681
2011-09-09 19:55:30 +01:00
Justin Clark-Casey (justincc)
42790f021f
Fix unit tests from RegionSettings commit
2011-09-09 00:47:23 +01:00
Justin Clark-Casey (justincc)
086bf9f15d
Save the default terrain texture UUIDs for a new region instead of leaving them as UUID.Zero.
...
Leaving them at UUID.Zero meant that when a viewer 2 logged into a region that had been freshly created, it received UUID.Zero for these textures, and hence display the land as plain white.
On a simulator restart, the problem would go away since when the database adapators loaded the new region settings, RegionSettings itself has code to use default textures instead of UUID.Zero.
This commit resolves the problem by saving the default texture UUIDs instead of Zero.
However, we currently have to do this in a roundabout way by resaving once the RegionSettings have been created by the database for the first time. This needless complexity should be addressed.
This change will also have the effect of replacing any existing UUID.Zero terrain textures with the default ones.
However, this shouldn't have any effect since the UUID.Zeros were already being replaced in memory with those same UUIDs.
2011-09-09 00:38:04 +01:00
Justin Clark-Casey (justincc)
f5eace6781
Fix test failure. Oversight in setting up the tests themselves.
2011-09-08 21:54:40 +01:00
Justin Clark-Casey (justincc)
9615292133
Centralize module setup for NPC tests.
...
This is overkill for some tests since they dont' need all the modules, but I think the gain in code readability is worth it
2011-09-08 21:06:10 +01:00
Justin Clark-Casey (justincc)
96a3b68086
Remember to set and unset the fire and forget method at the top of the attachment and npc tests
2011-09-08 20:59:52 +01:00
Justin Clark-Casey (justincc)
bd5d2cb043
Use scene presence agent id for rezzed object ownership rather than item owner.
...
These should be identical. However, the item isn't available when rezzing npc attachments.
2011-09-08 20:51:52 +01:00
Justin Clark-Casey (justincc)
3e7960d161
Increase information in logging for UserAgentServiceConnector.
...
Done for http://opensimulator.org/mantis/view.php?id=5669
2011-09-08 19:52:28 +01:00
Justin Clark-Casey (justincc)
08bd16285d
When invoking any of the OSSL teleport functions, do it on a separate thread rather than the script thread.
...
This is to prevent the aborting of attachment script threads on teleport from aborting the one actually doing the teleport.
This allows OSSL teleport functions to work when invoked on scripts in attachments (and huds, I assume)
2011-09-07 23:55:41 +01:00
Justin Clark-Casey (justincc)
7cadb89a0f
When a region is added to the HG Inventory Broker, also pass this through to the embedded local inventory connector to prevent an NRE when that connector tries to lookup the UserManager through the scene.
...
This is to address http://opensimulator.org/mantis/view.php?id=5669
However, if this failure was happening I'm kind of surprised that local HG inventory was working at all.....
We probably weren't seeing these exceptions previously because we weren't logging them when the reached the top of a FireAndForget thread.
2011-09-07 23:16:19 +01:00
Tom
03f6734f43
First set of merge fixes
2011-09-07 09:42:18 -07:00
Justin Clark-Casey (justincc)
d7a516d885
Add temporary debugging in HGInventoryBroker and RemoveXInventoryServiceConnector
...
This is for http://opensimulator.org/mantis/view.php?id=5669
If we can't retrieve an IUserManagement module we complain, and we also warn in the log when its manually set in XISC by HGInventoryBroker
2011-09-06 23:16:37 +01:00
Justin Clark-Casey (justincc)
e6cd4defdb
Lock m_pendingObjects when calling GetPendingObjectsCount().
...
This is only called by a region console command.
We should also be locking m_partsUpdateQueue when dequeueing the next part, or locking m_pendingObjects in QueuePartForUpdate().
However, I won't do this now since I don't have time to analyze how this would affect liveness.
2011-09-06 22:48:05 +01:00
Justin Clark-Casey (justincc)
3d4d3427cd
Comment out SceneViewer.Reset() and stop calling from Close() since this is useless work as a closed scene object is never reset.
...
Strictly speaking, we could also stop bothering to clear the m_updateTimes and m_partsUpdateQueue if we are sure that the whole SceneViewer is shortly to be garbage collected anyway, but we'll leave them around for now.
2011-09-06 22:44:34 +01:00
Justin Clark-Casey (justincc)
405a5b097b
Comment out unused ISceneViewer.Reset() to reduce code complexity
2011-09-06 22:39:01 +01:00
Justin Clark-Casey (justincc)
4bf3adffb8
In SceneViewer, introduce an IsEnabled flag and perform Close() under an m_pendingObjects lock in order to avoid the race condition seen by danbanner in http://opensimulator.org/mantis/view.php?id=5669
2011-09-06 22:26:28 +01:00
Justin Clark-Casey (justincc)
1a8f5b97b9
refactor: Make logic in AM.AttachObject() clearer by not reusing existing variables in different contexts
2011-09-06 02:40:19 +01:00
Justin Clark-Casey (justincc)
5beee42809
rename AM.AddSceneObjectAsAttachment() to AddSceneObjectAsNewAttachmentInInv
2011-09-06 02:29:22 +01:00
Justin Clark-Casey (justincc)
b903d2ca96
In SetAttachment, if the existing attachment has no asset id then carry on 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
2011-09-06 01:59:21 +01:00
Justin Clark-Casey (justincc)
c6ec573d10
Get rid of the confusing version of IAttachmentsModule.RezSingleAttachmentFromInventory() with the updateInventoryStatus switch, since this is never called with false
2011-09-06 00:36:38 +01:00
Justin Clark-Casey (justincc)
05a4bedc30
get rid of the unused AttachmentsModule.ShowAttachInUserInventory()
2011-09-06 00:32:52 +01:00
Justin Clark-Casey (justincc)
0cb0140a1d
Stop the pointless double setting of every attachment in AvatarAppearance.
...
The second was already being filtered out so this has no user level effect
2011-09-06 00:29:37 +01:00
Justin Clark-Casey (justincc)
cf73afec35
Try disabling the inconsistent attachment state check to see if this actually has an impact.
...
The code in question is over three years old and just be catching an inconsistency rather than being wholly necessary.
This commit still carries out the check and prints all the previous log warnings but a 'failure' no longer prevents avatar region crossing or teleport, and it doesn't give the client the error message.
This will have some kind of impact on http://opensimulator.org/mantis/view.php?id=5672
2011-09-05 23:42:37 +01:00
Justin Clark-Casey (justincc)
5e579b71fd
Allow the HGInventoryBroker to set the UserManager when it instantiates a RemoteXInventoryServiceConnector for a visiting HG user.
...
Not doing this causes NREs whenever that user tries to access inventory when Hypergrid is turned on since the Remote connector does not have a scene (which is only used to fetch the UserManager)
Aims to address http://opensimulator.org/mantis/view.php?id=5669
2011-09-05 22:55:48 +01:00
Tom
9cc2d0b60a
Now merging the core changes.
2011-09-04 08:30:23 -07:00
Tom
af59352c4c
Change of tactic. Reverting this to the careminster version, then i'll selectively merge the changes made to core.
2011-09-04 07:54:17 -07:00
Tom
9ab951a954
I fucked up the merge for SOG, so reverting back to OpenSim Core's version...
2011-09-04 07:38:25 -07:00
Tom
66dec3b874
Resolve merge commits, stage 1
2011-09-04 07:06:36 -07:00
Justin Clark-Casey (justincc)
5c1fa968ab
Stop NPCs losing attachments when the source avatar takes them off.
...
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
2011-09-03 01:11:16 +01:00
Justin Clark-Casey (justincc)
e6eb0d9a6f
Comment out Scene.CleanDroppedAttachments() and calls.
...
This method wasn't actually doing anything since dropped attachments retain a PCode of 9.
Also, behaviour of dropped attachments in other places appears to be that they persist after avatar logout rather than get deleted.
2011-09-02 23:19:27 +01:00
Justin Clark-Casey (justincc)
dbcfb25a52
Remove redundant RootPart.CreatedSelected = true in IAM.RezObject() since this is done through parts iteration
2011-09-02 22:54:03 +01:00
Justin Clark-Casey (justincc)
26b471f25a
Go back to resetting the State parameter for all parts of a SOG when SOG.ClearPartAttachmentData() is called.
...
Even though we don't use these on rez they are still present after an unlink, after which selecting them causes various viewers to crash
Hopefully really does address http://opensimulator.org/mantis/view.php?id=5664
2011-09-02 22:28:27 +01:00
Justin Clark-Casey (justincc)
af7c6c5f39
stop passing FromUserInventoryItemID right down into the deserializer.
...
the code becomes simpler if this is set from the outside - only one place needs to do this.
2011-09-02 00:50:16 +01:00
Justin Clark-Casey (justincc)
9c0a03731d
Move more of IAM.RezObject() into DoPreRezWhenFromItem()
2011-09-02 00:41:21 +01:00
Justin Clark-Casey (justincc)
15ea82e925
move more of IAM.RezObject() into DoPreRezWhenFromItem()
2011-09-02 00:25:05 +01:00
Justin Clark-Casey (justincc)
01146bb3e3
factor out a section of IAM.RezObject() into DoPreRezWhenFromItem()
2011-09-02 00:04:22 +01:00
Justin Clark-Casey (justincc)
3e86064d6b
refactor: factor out DoPostRezWhenFromItem() from IAM.RezObject()
2011-09-01 23:49:38 +01:00
Justin Clark-Casey (justincc)
cc8897127b
remove the pointless m_Scene.GetNewRezLocation() call at the top of IAM.RezObject() since its always recalculated later on anyway
2011-09-01 23:37:03 +01:00
Justin Clark-Casey (justincc)
712d44635a
refactor: Move sanity checks to the top of IAM.RezObject() to make the code more readable
2011-09-01 23:14:50 +01:00
Justin Clark-Casey (justincc)
e30651b931
use group.RootPart in IAM.RezObject() rather than group.GetChildPart(group.UUID);
2011-09-01 23:09:14 +01:00
Justin Clark-Casey (justincc)
8b83c4a433
Remove pointless NRE check in IAM.RezObject() since this can never occur
2011-09-01 23:06:57 +01:00
Justin Clark-Casey (justincc)
1bf29d60e1
Remove code which was automatically deleting non-root prims from scene objects that had previous been attachments.
...
Looks like this code was accidentally uncommented in e1b5c612
from feb 2010.
Appears to resolve the rest of http://opensimulator.org/mantis/view.php?id=5664
2011-09-01 22:05:05 +01:00
Justin Clark-Casey (justincc)
616e672fce
If the user receiving an inventory folder has left the scene by the time the acceptence message arrives, then don't send them an inventory update.
...
Doing so causes a NullReferenceException
2011-09-01 02:43:17 +01:00
Justin Clark-Casey (justincc)
c491cdcb95
refactor: use SOG register target waypoints and rots directly instead of calling through the SOP, which doesn't make conceptual sense anyway.
2011-09-01 02:18:31 +01:00
Justin Clark-Casey (justincc)
7eca929686
Eliminate pointless checks of SOG.RootPart != null
...
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
2011-09-01 02:11:00 +01:00
Justin Clark-Casey (justincc)
10d883dc88
refactor: use ParentGroup.UUID directly instead of SOP.GetRootPartUUID()
2011-09-01 01:41:53 +01:00
Justin Clark-Casey (justincc)
63bf710237
Fix issue with llGetTorque() where it would only ever return a zero vector.
2011-09-01 01:37:35 +01:00
Justin Clark-Casey (justincc)
095b3e5756
Remove pointless cluttering SOP.ParentGroup != null checks.
...
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.
2011-09-01 01:22:28 +01:00
Justin Clark-Casey (justincc)
083ba72b28
Fix a bug where the non-root parts of rezzed objects that had previously been attachments were sending their old attachment values to the client.
...
The root part state is the canonical value, so always send that instead.
Sending conflicting attachments states for non-root parts of a rezzed object is enough to crash the client.
Fixes http://opensimulator.org/mantis/view.php?id=5664 .
Many thanks to mewtwo0641 for some fantastic qa work on this one.
2011-08-31 23:33:01 +01:00
Justin Clark-Casey (justincc)
ca9a054bba
Don't set a GridUser entry for NPCs.
...
Resolves http://opensimulator.org/mantis/view.php?id=5665
2011-08-31 18:03:07 +01:00
Justin Clark-Casey (justincc)
7d58b5fa15
move common code into AttachmentsModule.DeleteAttachmentsFromScene()
2011-08-31 17:53:58 +01:00
Justin Clark-Casey (justincc)
3aa86d22d1
If a FireAndForget thread terminates with an exception, then catch and log rather than letting it terminate the simulator.
...
Exceptions don't appear to do this with the SmartThreadPool but they do with UnsafeQueueUserWorkItem (and maybe others)
2011-08-31 17:38:32 +01:00
Justin Clark-Casey (justincc)
e69f246b86
refactor: move multiple class to set avatar height into associated SP.AddToPhysicalScene()
2011-08-31 17:25:18 +01:00
Justin Clark-Casey (justincc)
899d109e82
get rid of appearance null checks - this is never null
2011-08-31 17:13:53 +01:00
Justin Clark-Casey (justincc)
8c703022c1
In WorldCommModule, replace the useless Attachments == null check with Attachments.Count == 0 instead
2011-08-31 16:50:18 +01:00
Justin Clark-Casey (justincc)
d3c03658aa
minor: remove mono compiler warning
2011-08-31 16:48:21 +01:00
Justin Clark-Casey (justincc)
54839d28ad
remove pointless m_attachments == null check since this field is never null
2011-08-31 16:46:43 +01:00
Justin Clark-Casey (justincc)
5a5206449f
minor: seal up another instance of using the appearance list without locking
2011-08-31 16:41:58 +01:00
Justin Clark-Casey (justincc)
32444d98cb
Make SP.Attachments available as sp.GetAttachments() instead.
...
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.
2011-08-31 16:29:51 +01:00
Justin Clark-Casey (justincc)
2acfff9f6d
remove pointless ToArray() call in AttachmentsModule.SaveChangedAttachments()
2011-08-30 23:39:26 +01:00
Justin Clark-Casey (justincc)
1809aaf74c
minor: remove already processed avatar null check in Scene.RemoveClient()
...
remove some now duplicated method doc
2011-08-30 23:36:45 +01:00
Justin Clark-Casey (justincc)
ddc733cd3d
refactor: move SP.SaveChangedAttachments() fully into AttachmentsModule
2011-08-30 23:32:30 +01:00
Justin Clark-Casey (justincc)
04bafd2122
refactor: Move ScenePresence.RezAttachments() into AttachmentsModule
...
This adds an incomplete IScenePresence to match ISceneEntity
2011-08-30 23:06:10 +01:00
Justin Clark-Casey (justincc)
a90e1cf3aa
add Name property to ISceneEntity
2011-08-30 22:39:16 +01:00
Justin Clark-Casey (justincc)
1de68b34d9
refactor: migrate DropObject handling fully into AttachmentsModule from Scene
2011-08-30 22:25:38 +01:00
Justin Clark-Casey (justincc)
37a5cf5783
minor: comment out friends number logging from login for now
2011-08-30 22:08:43 +01:00
Justin Clark-Casey (justincc)
e7a515bab0
Fix bug where attachments were remaining on the avatar after being dropped.
...
If the inventory service is configured not to allow deletion then these will not disappear from inventory
2011-08-30 22:06:24 +01:00
Mic Bowman
17dab7245f
Merge branch 'master' into bulletsim
2011-08-30 08:44:28 -07:00
Justin Clark-Casey (justincc)
be357f8fee
Fix bug in persisting saved appearances for npcs
...
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
2011-08-30 01:58:32 +01:00
Robert Adams
96dce3e16c
Use GetMeshKey from PrimitiveBaseShape.
2011-08-29 10:10:48 -07:00
Mic Bowman
648866b597
Merge branch 'master' into bulletsim
2011-08-29 09:55:34 -07:00
Robert Adams
18037d41c4
Move GetMeshKey from buried inside Meshmerizer to a public method on PrimitiveBaseShape
...
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2011-08-28 16:50:54 -04:00
Robert Adams
80a2b81d52
Add level of detail specification to optionally reduce the number of vertices in generated prim meshes
...
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2011-08-28 16:49:25 -04:00
Makopoppo
795b56e695
Related to #4689 - Adding missing null check for SceneObjectPart
...
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2011-08-27 07:45:02 -04:00
Justin Clark-Casey (justincc)
d4d894c20f
Stop avatars returning from neighbouring regions from stalling on the border crossing.
...
On making a root agent, we need to reset the ScenePresence.m_movement_flag so that it doesn't remember the
movement registered to the client when it exited the initial region.
If this is remember, then the client avatar movement isn't updated and it appears to stall in mid-air, though this is resolved with a prod/release of any other direction key.
This bug was probably introduced a few weeks ago. Surprised that nobody brought it up.
2011-08-27 01:28:33 +01:00
Justin Clark-Casey (justincc)
1615e7d29f
Eliminate duplicate AttachmentPoint properties by always using the one stored in the root part's state field.
2011-08-27 00:33:24 +01:00
Justin Clark-Casey (justincc)
b7700428ec
refactor: camel case AttachmentPoint method arg as per code standards
2011-08-27 00:20:15 +01:00
Justin Clark-Casey (justincc)
33a894f3d2
refactor: move SOP.IsAttachment and AttachmentPoint up into SOG to avoid pointless duplication of identical values
2011-08-27 00:15:21 +01:00
Robert Adams
21708b832b
BulletSim: add mesh representation. Use meshes for static objects and switch to hulls for physical objects.
2011-08-26 15:51:21 -07:00
Mic Bowman
23f10f1d22
Merge branch 'master' into bulletsim
2011-08-26 15:23:46 -07:00
Justin Clark-Casey (justincc)
15a514fcbc
refactor: simplify SOP.AttachedAvatar into SOG.AttachedAvatar
...
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
2011-08-26 23:06:41 +01:00
Justin Clark-Casey (justincc)
5f3ffc195f
refactor: move SOG.DetachToGround() to AttachmentsModule.DetachSceneObjectToGround() and remove redundant code
2011-08-26 22:49:11 +01:00
Justin Clark-Casey (justincc)
ae614c1264
refactor: simplify DetachSingleAttachmentToGround() by retrieving the scene object group direct
2011-08-26 22:37:53 +01:00
Justin Clark-Casey (justincc)
040ad11e61
refactor: remove common presence set up in attachments tests
2011-08-26 22:24:51 +01:00
Justin Clark-Casey (justincc)
dc61bf4b1f
comment out verbose test logging from last commit
2011-08-26 22:17:27 +01:00
Justin Clark-Casey (justincc)
1dba047e4d
add regression test for detaching an attachment to the scene
2011-08-26 22:17:05 +01:00
Justin Clark-Casey (justincc)
002313bf13
refactor: move sog.DetachToInventoryPrep() into AttachmentsModule.DetachSingleAttachmentToInv()
2011-08-26 22:02:23 +01:00
Justin Clark-Casey (justincc)
fcbed6479a
Downgrade warning about not saving unchanged attachment to debug instead, and change text to better indicate what it's saying
2011-08-26 21:46:12 +01:00
Justin Clark-Casey (justincc)
6c692d2e21
Fix a very recent regression from llAttachToAvatar() fix where I accidentally stopped normal script state persistence on login/logout and attach/detach
2011-08-26 21:26:29 +01:00
BlueWall
04d42860fe
Merge branch 'master' of /home/opensim/src/opensim
2011-08-25 07:01:57 -04:00
Micheil Merlin
cf42fcd978
llSetPrimitiveParams correct prim hollow for cases where limit should be 70%.
...
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2011-08-25 06:50:55 -04:00
Justin Clark-Casey (justincc)
4b4c5e69e5
Remove forcing of phantom on ground attached objects - attachments can be both non-phantom and flagged as physical.
...
As per Melanie
2011-08-24 22:45:51 +01:00
Justin Clark-Casey (justincc)
d5dc8133fc
remove pointless IsDeleted check on SP.RezAttachments()
...
IsDeleted is never set for an SP, even though it's on EntityBase.
It might be an idea to set it in the future
2011-08-24 22:37:08 +01:00
Justin Clark-Casey (justincc)
6d4432f440
refactor: simplify EntityBase.IsDeleted property
2011-08-24 22:34:26 +01:00
Justin Clark-Casey (justincc)
21f1b68fdf
extend initial rez regression test to check that attachment is phantom
2011-08-24 22:25:23 +01:00
Justin Clark-Casey (justincc)
73d913dad2
Make objects attached from the ground phantom
2011-08-24 22:12:51 +01:00
Justin Clark-Casey (justincc)
9ba4511d3e
add SOG helper properties IsPhantom, IsTemporary, etc. to improve code readability
...
use these in some sog methods
2011-08-24 21:53:12 +01:00
Justin Clark-Casey (justincc)
801b7f18a7
return InventoryItemBase from AddSceneObjectAsAttachment()
2011-08-24 21:40:36 +01:00
Justin Clark-Casey (justincc)
5eeee480d4
refactor: move Scene.Inventory.attachObjectAssetStore() into AttachmentsModule.AddSceneObjectAsAttachment()
2011-08-24 21:35:44 +01:00
Justin Clark-Casey (justincc)
274e354006
get rid of pointless grp null check in attachObjectAssetStore()
2011-08-24 21:23:10 +01:00
Justin Clark-Casey (justincc)
0e0d40c810
minor: remove hardcoded region numbers with the region size constant and a currently hardcoded offset
2011-08-24 21:18:11 +01:00
Justin Clark-Casey (justincc)
ccf07f6ae3
refactor: remove pointless AgentId argument from attachObjectAssetStore()
2011-08-24 21:14:57 +01:00
Justin Clark-Casey (justincc)
b9ec625dbf
add TestAddAttachmentFromGround() regression test
2011-08-24 21:07:46 +01:00
Justin Clark-Casey (justincc)
cf3ffe5bb4
Fix llAttachToAvatar()
...
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.
2011-08-24 20:49:23 +01:00
Justin Clark-Casey (justincc)
97b207240e
rename AttachmentsModule.ShowDetachInUserInventory() to DetachSingleAttachmentToInv() for consistency and to reflect it's actual behaviour
2011-08-23 22:05:22 +01:00
Justin Clark-Casey (justincc)
014cd4f8bb
remove mono compiler warnings
2011-08-23 21:41:16 +01:00
Justin Clark-Casey (justincc)
805ba268d5
replace TestRemoveAttachments() with a more thorough TestRemoveAttachment()
2011-08-23 21:37:36 +01:00
Justin Clark-Casey (justincc)
4a101080ee
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2011-08-23 21:21:02 +01:00
Justin Clark-Casey (justincc)
34aed96a2f
replace old TestAddAttachments() with a more thorough TestAddAttachment()
2011-08-23 21:20:23 +01:00
Mic Bowman
ce011d7e44
Protect a check for default texture entry when setting alpha values. Apparently
...
if all faces have their own textures then the default texture is null
2011-08-23 10:52:12 -07:00
Justin Clark-Casey (justincc)
afd5469eec
Remove pointless contains check in ScenePresence.RemoveAttachment()
2011-08-23 00:08:29 +01:00
Justin Clark-Casey (justincc)
1f3ce48be1
If an object failed to attach due to an exception, then try and detach it from the avatar's list of attachments as well as delete it from the scene.
...
This may help with the "Inconsistent attachment state" errors seen on teleport.
See http://opensimulator.org/mantis/view.php?id=5644 and linked reports
2011-08-23 00:04:38 +01:00
Justin Clark-Casey (justincc)
d328046efb
If an attachment fails, then start logging the exception for now, in order to help with the inconsistent state bug.
...
This also refactors AttachmentsModules to stop pointlessly refetching the ScenePresence in various methods. However, more of this is required.
2011-08-22 23:59:48 +01:00
Justin Clark-Casey (justincc)
2eaadf2dc0
Add warning log message to say which attachment fails validation in order to pin down problems with "Inconsistent Attachment State"
2011-08-22 23:28:37 +01:00
Justin Clark-Casey (justincc)
138a5e04b8
minor: remove mono compiler warning
2011-08-22 23:10:43 +01:00
Justin Clark-Casey (justincc)
940a248c3d
minor: comment out simulator features log line
2011-08-22 22:44:49 +01:00
Justin Clark-Casey (justincc)
7cf4bb5256
Add ISimulatorFeaturesModule so that other modules can register features in addition to the hardcoded ones.
2011-08-22 22:13:07 +01:00
Snoopy Pfeffer
db91044593
Thanks Neil Canham for fixing bulk inventory updates, no sending BulkInventoryUpdate after accepting inventory items.
2011-08-22 14:51:43 +02:00
Justin Clark-Casey (justincc)
d74686fd51
read m_rpcHandlersKeepAlive under appropriate lock
2011-08-22 02:25:58 +01:00
Justin Clark-Casey (justincc)
c587b0a3a3
oops, fix build break from last commit
2011-08-22 02:10:45 +01:00
Justin Clark-Casey (justincc)
9469c62098
improve locking of m_agentHandlers in BaseHttpServer
2011-08-22 02:07:51 +01:00
Justin Clark-Casey (justincc)
f9a367e2f6
improve locking of m_HTTPHandlers in BaseHttpServer
2011-08-22 01:59:40 +01:00
Justin Clark-Casey (justincc)
5a11cffd23
improve locking of m_streamHandlers in BaseHttpServer
2011-08-22 01:58:50 +01:00
Justin Clark-Casey (justincc)
20a4367827
remove necessity to catch a KeyNotFoundException in BaseHttpServer.RemoveLLSDHandler()
2011-08-22 01:58:19 +01:00
Justin Clark-Casey (justincc)
8254116dc6
improve locking of m_llsdHandlers in BaseHttpServer
2011-08-22 01:52:08 +01:00
Justin Clark-Casey (justincc)
2f1ac1d144
minor: remove mono compiler warning
2011-08-22 01:45:46 +01:00
Justin Clark-Casey (justincc)
94a8ab80c8
improve locking of m_rpcHandlers in BaseHttpServer
2011-08-22 01:43:34 +01:00
BlueWall
5e231acdce
Add avatar and attachments to llRegionSay
...
llRegionSay will now message avatars on chan 0
and will message attachments on the avatar that
listen on channels other than 0.
This behavior is consistant with the LL
implementation as tested on regions in Agni
with one exception: this implementation does
not include issue:
https://jira.secondlife.com/browse/SCR-66 ?
2011-08-20 12:36:35 -04:00
BlueWall
2787207aa2
Add llRegionSayTo
...
llRegionSayTo(key target, integer channel, string messasge)
Allows messages to be sent region-wide
to a particular prim.
2011-08-19 18:47:21 -04:00
Mic Bowman
384cb79a1a
Merge branch 'master' into bulletsim
...
Conflicts:
OpenSim/Region/Framework/Scenes/SceneManager.cs
2011-08-19 14:49:16 -07:00
Robert Adams
bb5b396fc5
Fix exception when using BasicPhysics
2011-08-19 00:53:57 +01:00
Justin Clark-Casey (justincc)
c9e6b7bd10
Stop NPC's getting hypergrid like names in some circumstances.
...
This meant punching in another AddUser() method in IUserManagement to do a direct name to UUID associated without the account check (since NPCs don't have accounts).
May address http://opensimulator.org/mantis/view.php?id=5645
2011-08-19 00:45:22 +01:00
Justin Clark-Casey (justincc)
3146f4bae0
Don't need to try both AssetService.Get and GetCached in GetMesh since Get always calls GetCached and code paths were identical
2011-08-18 23:36:43 +01:00
Robert Adams
fef73a1a10
BulletSim: add runtime setting of physics parameters. Update default values.
2011-08-18 14:32:09 -07:00
Justin Clark-Casey (justincc)
49258350e8
refactor: fold CreateSceneViewer() back into ScenePresence constructor
2011-08-18 01:22:01 +01:00
Justin Clark-Casey (justincc)
8d29d490a1
minor: remove some mono compiler warnings
2011-08-18 01:16:58 +01:00
Justin Clark-Casey (justincc)
45c37ef494
refactor: Fold 3 ScenePresence() constructors into one since only one is called.
2011-08-18 01:11:23 +01:00
Justin Clark-Casey (justincc)
c1a34cd8da
Don't try to save changed attachment states when an NPC with attachments is removed from the scene.
...
This is done by introducing a PresenceType enum into ScenePresence which currently has two values, User and Npc.
This seems better than a SaveAttachments flag in terms of code comprehension, though I'm still slightly uneasy about introducing these semantics to core objects
2011-08-18 00:53:05 +01:00
Justin Clark-Casey (justincc)
d8f886ccdb
comment out noisy attachments logging
2011-08-17 23:41:20 +01:00
Justin Clark-Casey (justincc)
eb8b6b7d52
minor: remove mono compiler warning
2011-08-17 23:28:57 +01:00
Justin Clark-Casey (justincc)
6b51d8a10e
In the asset service, check that an asset exists before attempting to store it.
2011-08-17 23:24:41 +01:00
Justin Clark-Casey (justincc)
4a9b8184f7
For now, supress 'OH NOES' warnings given by HGInventoryBroker.CacheInventoryServiceURL when it tries to cache it for an NPC
...
This concept is meaningless for NPCs. However, it might be better to make NPCism an actual property on ScenePresence and check.
Addresses http://opensimulator.org/mantis/view.php?id=5643
2011-08-17 01:51:58 +01:00
Justin Clark-Casey (justincc)
acfdca34fd
Fix issue where loading a new appearance onto an NPC would not remove the previous attachments from the scene.
...
Addresses http://opensimulator.org/mantis/view.php?id=5636
2011-08-17 01:35:33 +01:00
Justin Clark-Casey (justincc)
bd5d35ee32
extend test to check that there is one attachment and that it has the right name
2011-08-17 00:42:58 +01:00
Justin Clark-Casey (justincc)
696bd44833
Add new regression TestRezAttachmentsOnAvatarEntrance() to do simple attachments check
2011-08-17 00:37:33 +01:00
Justin Clark-Casey (justincc)
d73c424078
get rid of logged warnings about lack of some modules - afaik these never occur in real life and just clutter up tests
2011-08-16 23:12:58 +01:00
Justin Clark-Casey (justincc)
57e54d84d6
Add new FireAndForgetMethod.None.
...
This executes the callback on the same thread that made the request. Designed for use only by regression tests that rely on a predicable event ordering.
2011-08-16 23:05:08 +01:00
Justin Clark-Casey (justincc)
d3c10e609e
Move some previously common code back into separate tests. Remove unused region handle from test.
2011-08-16 22:27:52 +01:00
Justin Clark-Casey (justincc)
0bbf7c21d7
Isolate existing incomplete attachments tests rather than have them rely on each other.
...
Much easier to debug this way.
2011-08-16 22:13:32 +01:00
Justin Clark-Casey (justincc)
c58b32e7ba
drop number of attachments in test from 3 to 2 to reduce text complexity
2011-08-16 22:09:13 +01:00
Justin Clark-Casey (justincc)
601257f8b6
remove setting up of second scene in attachments since it's not currently used
2011-08-16 21:58:52 +01:00
Justin Clark-Casey (justincc)
66eb537d0c
relocate AttachmentTests.cs to AttachmentsModuleTests.cs
2011-08-16 21:56:56 +01:00
Justin Clark-Casey (justincc)
8d866ae8c3
minor: remove some mono compiler warnings
2011-08-16 21:45:01 +01:00
Justin Clark-Casey (justincc)
fd3a7ab70c
minor: change some comment text in flotsam asset cache
2011-08-16 21:31:17 +01:00
Justin Clark-Casey (justincc)
8c95c83562
On Flotsam asset cache, go back to moving the file from the temporary location rather than copying.
...
Copying doesn't prevent IOExceptions on Windows due to file locking. (e.g. Mantis 5642, 5630).
So instead go back to moving the file, swallowing IOExceptions that occur just for the move due to competing caching threads or even different opensimulator instances.
2011-08-16 21:03:43 +01:00