aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim (unfollow)
Commit message (Collapse)AuthorFilesLines
2011-09-13improve TestAddSceneObject() to test a multi-part object rather than a ↵Justin Clark-Casey (justincc)1-11/+14
single-part
2011-09-13In an object return message, send a null-terminated empty string in binary ↵Justin Clark-Casey (justincc)2-3/+43
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-12eliminate redundant SP.m_regionInfo since it always has the scene.Justin Clark-Casey (justincc)1-8/+6
We were already referencing through the scene in some places.
2011-09-12remove the unused SP.initializeScenePresence()Justin Clark-Casey (justincc)1-23/+2
2011-09-12stop the redundant passing in of RegionInfo to SceneGraph, since the Scene ↵Justin Clark-Casey (justincc)3-10/+7
is always passed in at the same time.
2011-09-12minor: if the script engine fails to find a prim for a script, also print ↵Justin Clark-Casey (justincc)2-1/+5
out that prim's local id in the error message.
2011-09-12comment out some recent terrain texture loggingJustin Clark-Casey (justincc)2-5/+5
2011-09-12Start locking entire add/remove operations on an ↵Justin Clark-Casey (justincc)4-175/+228
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-12lock AvatarAppearance.m_attachments when we use itJustin Clark-Casey (justincc)1-33/+58
This is partly to address http://opensimulator.org/mantis/view.php?id=5644, though something more thorough is needed.
2011-09-12When creating an OAR, optionally exclude objects according to their permissionsOren Hurvitz5-44/+216
2011-09-12minor: put <remarks> tags around some method docJustin Clark-Casey (justincc)1-5/+6
2011-09-10lock attachments when enumerating through them in ScenePresence.CopyTo().Justin Clark-Casey (justincc)2-21/+24
May have some effect on http://opensimulator.org/mantis/view.php?id=5644
2011-09-10Add extra log information when attachments fail validationJustin Clark-Casey (justincc)2-6/+20
2011-09-10reinstate the validation logging on teleport. A 'fail' of validation still ↵Justin Clark-Casey (justincc)1-0/+2
doesn't prevent the actual teleport.
2011-09-10Stop the UserManagementModule logging every user it adds for nowJustin Clark-Casey (justincc)1-3/+3
2011-09-09Delay loading scripts until the scene has finished loadingOren Hurvitz4-2/+32
2011-09-09Added a check to the CreateRegion method of the RemoteAdmin module that the ↵Kevin Houlihan1-0/+13
specified user exists. A meaningful exception message is returned if the user is not found. Previously it was returning "Object not set..."
2011-09-09llSetPrimitiveParams Prim type params precision errorsMicheil Merlin2-44/+90
2011-09-09Comment out the part of the load oar code that zeroes out prim sit target ↵Justin Clark-Casey (justincc)2-2/+8
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-09Use a copy of the inventory items list to register users in the thread ↵Justin Clark-Casey (justincc)2-2/+8
started by GetFolderContent(), to protect ourselves against callers modifying lists Hopefully this addresses http://opensimulator.org/mantis/view.php?id=5681
2011-09-09Fix unit tests from RegionSettings commitJustin Clark-Casey (justincc)2-0/+8
2011-09-09Save the default terrain texture UUIDs for a new region instead of leaving ↵Justin Clark-Casey (justincc)4-5/+43
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-08Fix test failure. Oversight in setting up the tests themselves.Justin Clark-Casey (justincc)1-1/+2
2011-09-08Centralize module setup for NPC tests.Justin Clark-Casey (justincc)1-41/+21
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-08Remember to set and unset the fire and forget method at the top of the ↵Justin Clark-Casey (justincc)2-5/+17
attachment and npc tests
2011-09-08Use scene presence agent id for rezzed object ownership rather than item owner.Justin Clark-Casey (justincc)3-9/+90
These should be identical. However, the item isn't available when rezzing npc attachments.
2011-09-08Increase information in logging for UserAgentServiceConnector.Justin Clark-Casey (justincc)1-12/+12
Done for http://opensimulator.org/mantis/view.php?id=5669
2011-09-07When invoking any of the OSSL teleport functions, do it on a separate thread ↵Justin Clark-Casey (justincc)1-6/+13
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-07When a region is added to the HG Inventory Broker, also pass this through to ↵Justin Clark-Casey (justincc)3-21/+41
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-06Add temporary debugging in HGInventoryBroker and ↵Justin Clark-Casey (justincc)3-19/+33
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-06Lock m_pendingObjects when calling GetPendingObjectsCount().Justin Clark-Casey (justincc)1-1/+2
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-06Comment out SceneViewer.Reset() and stop calling from Close() since this is ↵Justin Clark-Casey (justincc)1-16/+17
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-06Comment out unused ISceneViewer.Reset() to reduce code complexityJustin Clark-Casey (justincc)1-1/+1
2011-09-06In SceneViewer, introduce an IsEnabled flag and perform Close() under an ↵Justin Clark-Casey (justincc)2-19/+51
m_pendingObjects lock in order to avoid the race condition seen by danbanner in http://opensimulator.org/mantis/view.php?id=5669
2011-09-06refactor: Make logic in AM.AttachObject() clearer by not reusing existing ↵Justin Clark-Casey (justincc)1-14/+19
variables in different contexts
2011-09-06rename AM.AddSceneObjectAsAttachment() to AddSceneObjectAsNewAttachmentInInvJustin Clark-Casey (justincc)1-3/+3
2011-09-06In SetAttachment, if the existing attachment has no asset id then carry on ↵Justin Clark-Casey (justincc)4-6/+43
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-06Get rid of the confusing version of ↵Justin Clark-Casey (justincc)2-25/+2
IAttachmentsModule.RezSingleAttachmentFromInventory() with the updateInventoryStatus switch, since this is never called with false
2011-09-06get rid of the unused AttachmentsModule.ShowAttachInUserInventory()Justin Clark-Casey (justincc)1-28/+0
2011-09-06Stop the pointless double setting of every attachment in AvatarAppearance.Justin Clark-Casey (justincc)3-10/+13
The second was already being filtered out so this has no user level effect
2011-09-05Try disabling the inconsistent attachment state check to see if this ↵Justin Clark-Casey (justincc)3-23/+27
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-05Allow the HGInventoryBroker to set the UserManager when it instantiates a ↵Justin Clark-Casey (justincc)2-3/+15
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-03Stop NPCs losing attachments when the source avatar takes them off.Justin Clark-Casey (justincc)7-70/+154
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-02Comment out Scene.CleanDroppedAttachments() and calls.Justin Clark-Casey (justincc)2-37/+37
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-02Remove redundant RootPart.CreatedSelected = true in IAM.RezObject() since ↵Justin Clark-Casey (justincc)1-2/+0
this is done through parts iteration
2011-09-02Go back to resetting the State parameter for all parts of a SOG when ↵Justin Clark-Casey (justincc)2-5/+14
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-02stop passing FromUserInventoryItemID right down into the deserializer.Justin Clark-Casey (justincc)3-30/+7
the code becomes simpler if this is set from the outside - only one place needs to do this.
2011-09-02Move more of IAM.RezObject() into DoPreRezWhenFromItem()Justin Clark-Casey (justincc)2-27/+29
2011-09-02move more of IAM.RezObject() into DoPreRezWhenFromItem()Justin Clark-Casey (justincc)1-63/+85
2011-09-02factor out a section of IAM.RezObject() into DoPreRezWhenFromItem()Justin Clark-Casey (justincc)1-40/+48