Commit Graph

1717 Commits (2ae5b40ca6bb3d33310f0f66569bf150548a2de6)

Author SHA1 Message Date
Justin Clark-Casey (justincc) 62325829ec comment out all kinds of debugging guff 2011-07-19 05:14:58 +01:00
Justin Clark-Casey (justincc) 1fdb16f1cd Fix undo for rotation of the root prim in a linkset on its own.
The only obviously broken things right now are the undo of the position of just a root prim (stays in place) and the fact that resizes need two undoes.
2011-07-19 05:05:50 +01:00
Justin Clark-Casey (justincc) b2722e984a Fix undo of rotation of single prims in a linkset 2011-07-19 04:40:02 +01:00
Justin Clark-Casey (justincc) 97f1edfd95 Fix undo of prim group rotation.
This isn't that great since I think I broke it a few commits earlier.
Undo of rotation of individual prims in a linkset is still broken
2011-07-19 04:15:27 +01:00
Justin Clark-Casey (justincc) 4b9ef4f39c Rename UpdatePrimRotation() to UpdatePrimGroupRotation() since this is what it actually does and is more consistent with other method names. 2011-07-19 03:44:49 +01:00
Justin Clark-Casey (justincc) 7c468cda36 Stop undo of just the root prim position in the linkset from shifting the whole linkset.
However, what happens now is that undo just doesn't do anything when the root prim is selected on its own.  This requires more code than just fiddling with undo states.
2011-07-19 03:38:22 +01:00
Justin Clark-Casey (justincc) c94dc95844 fix undo when resizing of non-root individual prims in a linkset
undo resize, rotation and position still needs fixing when only editing root prim of a linkset
2011-07-19 03:27:16 +01:00
Justin Clark-Casey (justincc) 430a4aeba8 Fix undo for resizing linksets
This involves implementing a boolean in UndoState to signal whether the undo needs to be done for an entire group/linkset or just a single prim
Resizing individual components of linksets is still dodgy.
Resizing still has to be down twice, since for some reason the client is sending two multiobjectupdate packets on every resize except the very first.  This applies to single prims and linksets.  Need to look into this.
2011-07-19 03:01:54 +01:00
Justin Clark-Casey (justincc) 86f45f6fe7 remove undo state storage in a few places where it's pointless
no functional effect - existing bugs still remain
2011-07-19 01:24:43 +01:00
Justin Clark-Casey (justincc) 6fc74b36d1 Make various tweaks to undo code in an effort to get things working better.
Undo rotation and position appear to be working.
Resizing a single prim appears to be working, though the undo has to be done twice.
Resizing a group of prims still does not work properly - possibly because in the UndoState we don't store a knowledge of when we're resizing a whole group rather than individual prims.
This needs to be addressed.
2011-07-18 04:54:21 +01:00
Justin Clark-Casey (justincc) 3f8e571b78 Use a standard generic system stack for the undo/redo stacks instead of our own homebrew.
system stack also uses an array, so no performance penalty.
Also exposes undo count and adds a test assertion for correct undo count after resize
2011-07-18 02:01:12 +01:00
Justin Clark-Casey (justincc) e9a739f45f refactor: group all the undo/redo code in SOP into one place for easier code reading 2011-07-18 01:33:57 +01:00
Justin Clark-Casey (justincc) f5ddf37112 Replace ifs in SOG.GroupResize() with Math.Min()
Also fiddle a bit with undo.  This is not currently working properly, though to be fair it also didn't appear to work in 0.7.1.1 either (at least for resize).
Will get some more attention soon.
2011-07-16 05:23:21 +01:00
Justin Clark-Casey (justincc) 9a80adf33a remove now unncessary parts of SceneObjectGroup.Resize() 2011-07-16 04:49:21 +01:00
Justin Clark-Casey (justincc) 122745fe1c refactor: replace scale limiting code with more elegant Math.Min calls 2011-07-16 04:28:49 +01:00
Justin Clark-Casey (justincc) 2b68ac4ba3 refactor: Push all part resize code down into SceneObjectPart.Resize() 2011-07-16 04:22:57 +01:00
Justin Clark-Casey (justincc) 4b5a6b655b add test for resizing one part in a group 2011-07-16 03:52:30 +01:00
Justin Clark-Casey (justincc) df2a59d31b refactor: make SceneObjectGroup.GroupScale() a property rather than a mehod 2011-07-16 03:30:14 +01:00
Justin Clark-Casey (justincc) 0f9882db5b minor: add a log warning if a sculpt/mesh async asset request returns no data 2011-07-16 03:24:36 +01:00
Justin Clark-Casey (justincc) 6f9b855719 refactor: remove pointless sender != null tests, etc, in AssetReceived, since the method called always belongs to the object that generated the request 2011-07-16 03:16:24 +01:00
Justin Clark-Casey (justincc) 982e71b6b8 eliminate unused and redundant SceneObjectGroup.AssetReceived() 2011-07-16 03:08:28 +01:00
Justin Clark-Casey (justincc) c82f19e41c fix build break from last commit 2011-07-16 03:06:30 +01:00
Justin Clark-Casey (justincc) 3fc12e7224 Eliminate the pointless textured id argument to SculptTextureCallback 2011-07-16 03:02:28 +01:00
Justin Clark-Casey (justincc) 27fae36a21 remove the need to supply SceneObjectGroup.GroupResize() with a localId.
This is utterly pointless scene we already know which sog we're dealing with.
2011-07-16 02:53:36 +01:00
Justin Clark-Casey (justincc) 50bd48542c Add very basic test for resizing a scene object with one prim 2011-07-16 02:44:00 +01:00
Justin Clark-Casey (justincc) da7340b9fb If resized shape is a mesh/sculpt, leave it to the mesh asset callback to trigger the physics actor taint.
In the last commit, the fix was made by updating all the child prim physics actors with the new size rather than just the root part.
2011-07-16 01:42:56 +01:00
Justin Clark-Casey (justincc) 18652eb87e Fix physics proxy regeneration when a mesh with more than one submesh is resized
Addresses http://opensimulator.org/mantis/view.php?id=5584
2011-07-16 01:36:27 +01:00
root e9dbe54ab1 Fix some local id issues in physics glue 2011-07-15 20:07:59 +01:00
Robert Adams b55076990c fix duplication of physical objects for physics engines that care about the initial value of localID 2011-07-15 11:37:34 -07:00
Justin Clark-Casey (justincc) df0e5cc9fe When a mesh object is added to a scene, delay adding the physics actor until the sculpt data has been added to the shape (possibly via an async asset service request)
This prevents spurious 'no asset data' for meshes added on startup.
2011-07-12 02:33:09 +01:00
Justin Clark-Casey (justincc) 8e44a8e2b9 Properly regenerate physics proxy when a mesh is resized.
This is done in SOP.Resize().  More common code from callers needs to be refactored into this method to reduce confusing copy/pasting
2011-07-11 03:47:49 +01:00
Justin Clark-Casey (justincc) 0badf3718d refactor: push the part of SceneObjectGroup.CheckSculptAndLoad() that actually deals with the part into a SceneObjectPart.CheckSculptAndLoad() method 2011-07-11 03:35:29 +01:00
Justin Clark-Casey (justincc) 2f3d0e209f When a sculpt/mesh texture is received by a part on a callback request, don't do the unnecessary work of copying the base shape.
Just setting the new base shape is enough to reinsert the sculpt data and set the taint.
Also cleans up a few more left-in debugging messages.
2011-07-11 03:13:59 +01:00
Justin Clark-Casey (justincc) 6a15464b0a refactor: Make arguments to SceneGraph.UpdatePrimFlags() more readable 2011-07-11 02:29:19 +01:00
Justin Clark-Casey (justincc) 01b98c2e62 refactor: Make arguments for SceneObjectGroup.UpdatePrimFlags() more readable 2011-07-11 02:18:19 +01:00
Justin Clark-Casey (justincc) e68ae44b6b minor: remove mono compiler warning 2011-07-11 02:11:37 +01:00
Justin Clark-Casey (justincc) c6d4304a04 refactor: very minor space insertion 2011-07-11 02:11:16 +01:00
Justin Clark-Casey (justincc) c964114f7e refactor: make argument to SOP.UpdatePrimFlags() more readable 2011-07-11 02:09:11 +01:00
Justin Clark-Casey (justincc) 59aedbc94b Rename SceneSetupHelpers.AddRootAgent to AddClient() to better represent its effects and return object 2011-07-09 02:25:40 +01:00
Justin Clark-Casey (justincc) 5e8900dfd0 minor: code tidy and inserted log lines for future use.
Unable to get to the bottom of why resizing a mesh fails to properly reset the physics proxy, when toggling phantom does
After a mesh is generated, the existing sculptdata is set to zero in PrimitiveBaseShape to save memory
When phantom is toggled, the sculptdata is regenerated before remeshing.
But on resize, the sculptdata is not regenerated.
So clearly, resetting sculptdata is possible, but haven't quite been able to pin down how this is being done when phantom is toggled.
2011-07-09 00:35:30 +01:00
Justin Clark-Casey (justincc) 1dcad4ac66 minor: commented out log lines for future use and very small code tidy 2011-07-08 17:58:01 +01:00
Justin Clark-Casey (justincc) e41093635a fix build break I just introduced 2011-07-01 21:37:03 +01:00
Justin Clark-Casey (justincc) 9f72fbcb75 Add an async inventory details sender to respond to FetchInventory packets.
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.
2011-07-01 21:25:40 +01:00
Justin Clark-Casey (justincc) c84a1bd99f Don't follow inventory links of links.
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
2011-06-29 01:33:41 +01:00
Justin Clark-Casey (justincc) 1b4c08730e refactor: simplify redundant double containing folder check 2011-06-29 00:56:35 +01:00
Justin Clark-Casey (justincc) 3f0b8db0c1 If an inventory link target is in the same folder as the source, then don't recursively request that folder.
Currently, this should never actually happen but certainly best to handle this case
2011-06-29 00:54:53 +01:00
Justin Clark-Casey (justincc) 22f25fae38 Hack around with the NPC module to get osNpcCreate() partially working again.
This now creates an avatar but appearance is always cloudy.
Move doesn't work.
Really, creating an NPC should only involve a ScenePresence rather than doing anything with IClientAPI, since an NPC has no viewer to communicate with!
2011-06-29 00:28:22 +01:00
Justin Clark-Casey (justincc) 1a0a9d2290 Implement the latest mesh mechanism so that rezzing the uploaded mesh now works again.
Many thanks to the aurora project for pioneering this.
This code is almost certainly not bug free, but it does at least appear to handle simple meshes (except when the viewer crashes - but it is beta!).
2011-06-24 21:54:01 +01:00
Mic Bowman ad84728aba Add localID to physical object creation functions. 2011-06-15 11:31:32 -07:00
Mic Bowman 29da57e380 Add the PhysActor to the correct SOP when duplicating a physical
prim. Thanks, MisterBlue
2011-06-15 11:26:45 -07:00
Justin Clark-Casey (justincc) fc7e17baf7 When serializing objects, stop accidentally using the green text colour value for alpha
This addresses http://opensimulator.org/mantis/view.php?id=5111
2011-06-10 21:49:25 +01:00
Justin Clark-Casey (justincc) b5518dc906 minor: Add some commented out destructor logging messages for potential future use.
At the moment, client and scene objects are being garbage collected as expected, at least in simple scenarios.
2011-06-10 20:40:14 +01:00
Justin Clark-Casey (justincc) 2bc8dcfdbd minor: add method doc to make it clear that click action is fired when the click action is changed, not when a prim is clicked 2011-06-10 02:27:45 +01:00
Diva Canto 80fc607d75 Fixed "Unknown User" listed as creator/owner on prims created with the Build button by foreign visitors. Added command to the UserManagementModule to list all the known bindings between user UUIDs and their names: show user-names. 2011-06-08 16:01:33 -07:00
Diva Canto 9759b2a4bb Added EventManager.OnPrimsLoaded, an event that modules can hook up onto so that they know when the scene's objects have been loaded from the DB. 2011-06-08 15:18:14 -07:00
Diva Canto 02b40670be This makes the display names work better for foreigners 2011-06-07 12:10:57 -07:00
Justin Clark-Casey (justincc) fe471b6424 Extend TestGiveInventoryFolder() to test giving back the freshly received folder 2011-06-04 02:44:53 +01:00
Justin Clark-Casey (justincc) 12b1cbf8bf Fix give inventory tests to use different users rather than (accidentally) the same user. Extend TestGiveInventoryItem() to test giving back the same item. 2011-06-04 02:39:26 +01:00
Justin Clark-Casey (justincc) fe890554fb insert an InventoryArchiveUtils.FindItemsByPath() to return multiple items rather than just the first one 2011-06-04 01:37:01 +01:00
Justin Clark-Casey (justincc) 896f039513 create TestGetInventoryItem() 2011-06-04 00:51:49 +01:00
Justin Clark-Casey (justincc) 1543fd7fff extend TestGiveInventoryFolder() to check for the receipt by user 2 2011-06-04 00:20:54 +01:00
Justin Clark-Casey (justincc) d09210da86 minor: add in method print out to new test 2011-06-03 23:15:31 +01:00
Justin Clark-Casey (justincc) 527e10a04e add stub UserInventoryTests.GiveInventoryFolder(). Not yet complete 2011-06-03 23:13:05 +01:00
Diva Canto e33cedfd42 HG Landmarks now working. 2011-06-03 10:26:58 -07:00
Diva Canto 76c60f1f99 Moved CreateNewInventoryItem to the InventoryAccessModule in preparation for supporting HG landmarks. 2011-06-03 08:27:01 -07:00
BlueWall 3326e417b4 Merge branch 'master' of /home/opensim/src/opensim 2011-05-28 16:21:30 -04:00
BlueWall c7e18f9017 Adding an event to signal that logins are enabled
Added an event to signal the eabling of logins and added an alert to send to a configured service.
2011-05-28 16:20:10 -04:00
BlueWall d2c2a4301b Merge branch 'master' of /home/opensim/src/opensim 2011-05-28 00:39:21 -04:00
BlueWall 99f42c0a6e Add option to disable logins
This just covers script loading for now. More to come.
2011-05-28 00:35:06 -04:00
Justin Clark-Casey (justincc) e9988a3728 Make sure culture is en-US when saving archive related xml.
This might resolve http://opensimulator.org/mantis/view.php?id=5475
2011-05-27 21:19:20 +01:00
Justin Clark-Casey (justincc) 4e4db749eb If parsing fails in the primitive base shape (which prints out a debug log message), also print out the name and uuid of the part containing this shape.
This is to help in diagnosing parsing failures.
2011-05-27 20:59:35 +01:00
Melanie e398c33648 Add PayPrice to serialization format Xml2 2011-05-25 12:17:46 +01:00
Melanie 28c25d8477 Allow disabling the legacy backup mechanism to avoid the object clone if
backup is not used.
2011-05-24 04:03:51 +01:00
Melanie 178d541dca Add an event for an orderly region shutdown that fires once per region before
the SceneGraph is torn down.
2011-05-24 01:19:48 +01:00
Justin Clark-Casey (justincc) bb9b317f15 Get rid of OpenSim.Tests.Common.Setup subpackage in favour of just OpenSim.Tests.Common instead 2011-05-21 01:05:20 +01:00
Justin Clark-Casey (justincc) d7e5b76d73 refactor: rename AddSceneObjectItem to AddSceneObject 2011-05-21 00:39:42 +01:00
Justin Clark-Casey (justincc) 084059319c refactor: move scene object item creation code into TaskInventoryHelpers 2011-05-21 00:37:20 +01:00
Justin Clark-Casey (justincc) 9103fe84d5 move test task inventory notecard item creation into a new TastInventoryHelpers class 2011-05-21 00:25:58 +01:00
Justin Clark-Casey (justincc) 0050bb438c refactor: use SceneSetupHelpers.CreateSceneObject() 2011-05-21 00:15:22 +01:00
Justin Clark-Casey (justincc) 534ee52a12 rename UserProfileTestUtils to UserAccountHelpers to be consistent with other test helper names 2011-05-21 00:11:52 +01:00
Justin Clark-Casey (justincc) 3fed61a5d5 refactor: in TaskInventoryTests, use UserProfileTestUtils.CreateUserWithInvetory() 2011-05-21 00:07:24 +01:00
Justin Clark-Casey (justincc) 90567a9eaa refactor Scene.RezObject() to use AddNewSceneObject() rather than copy/pasting code with small differences 2011-05-21 00:02:53 +01:00
Justin Clark-Casey (justincc) f2095ea279 refactor TestRezObjectFromInventoryItem() 2011-05-20 23:45:39 +01:00
Justin Clark-Casey (justincc) 4b0fc4faef implement Scene.GetSceneObjectGroup(string name) to match the equivalent GetSOP method 2011-05-20 23:41:14 +01:00
Justin Clark-Casey (justincc) 91a9f30b16 implement Scene.GetSceneObjectGroup(UUID fullID) using existing index 2011-05-20 23:34:34 +01:00
Justin Clark-Casey (justincc) 7ed419217f add test for rezzing an object from a prim item 2011-05-20 23:22:27 +01:00
Justin Clark-Casey (justincc) c562b9ef19 correct small mistake in "delete object name <name>" usage summary 2011-05-18 00:22:09 +01:00
Justin Clark-Casey (justincc) 784f70f704 don't throw a null reference if an inventory link target doesn't exist when we're inspecting in order to send the required inventory folders 2011-05-17 02:25:05 +01:00
Justin Clark-Casey (justincc) 5573fcfa93 Fix adding/removing/replacing outfits in viewer 2
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.
2011-05-14 00:10:27 +01:00
Justin Clark-Casey (justincc) 5f9edd195c Fix broken inventory links on viewer 2.
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
2011-05-13 03:24:19 +01:00
Justin Clark-Casey (justincc) 9988bff9e3 Add a smidgen of method doc about the fact that item links reuse the asset id item slot 2011-05-12 03:18:53 +01:00
Justin Clark-Casey (justincc) ac12ace6f1 Prevent viewer 2 from creating a duplicate outfit inventory links.
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".
2011-05-12 02:46:13 +01:00
Melanie 2b88d8f93f Add commands to delete objects by name, UUID, creator or owner 2011-05-09 01:28:23 +01:00
dahlia eaa33cf478 adjust avatar terse update packet filter distance error threshold based on avatar speed 2011-05-06 16:56:54 -07:00
Justin Clark-Casey (justincc) 04ecd748d9 remove further mono compiler warnings 2011-05-06 22:47:41 +01:00
Diva Canto 74e981e796 One more bug fix concerning library items that weren't being copied to user's inventory. Also commented verbose debug message. 2011-05-06 09:56:27 -07:00
Diva Canto eafc01cf8f Bug fix: iars under Library weren't being loaded. 2011-05-06 09:08:24 -07:00
Diva Canto 6d34932775 Merge branch 'master' into caps 2011-05-04 20:30:33 -07:00
Diva Canto 6c503e75ac Put the previous state back in the attachments in case the agent transfer fails. 2011-05-04 12:04:35 -07:00
Diva Canto a0f3b23065 Merge branch 'master' into caps 2011-05-04 07:31:32 -07:00
dahlia 4c59d57596 use getters instead of member variables in velocity network filter code and add some more descriptive comments. 2011-05-04 03:29:06 -07:00
dahlia 13ab00e45a adjust terse avatar update filtering to send updates when distance traveled does not match expected distance, rather than at a fixed time period. this should smooth avatar motion somewhat when moving in a straight line and velocity is constant. 2011-05-03 19:47:50 -07:00
Diva Canto f79400e94c Broke down Caps.cs into a generic Caps object that simply registers/unregisters capabilities and a specific bunch of capability implementations in Linden space called BunchOfCaps.
Renamed a few methods that were misnomers.
Compiles but doesn't work.
2011-05-01 18:22:53 -07:00
Diva Canto 00e94b0ba8 Check for RegionID instead of RegionHandle. Other minor tweaks 2011-04-30 16:53:11 -07:00
Melanie 99b35d3ca6 When coming in from a legacy region without fatpacks, start scripts the
usual way
2011-04-30 16:20:20 +01:00
Diva Canto 4d5d6222f7 Delaying starting the scripts on TPs and crossings until the agent is root. 2011-04-29 17:09:48 -07:00
Diva Canto 0d49611f6d Remove the scripts of the attachments in the departing region and recreate them if fail. 2011-04-29 15:52:06 -07:00
Diva Canto 73caa4e94a Minor correction to yesterday's changes. Make normal prim crossing (no attach) work well again. 2011-04-29 08:42:51 -07:00
Diva Canto 97790075fe Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-04-28 20:47:34 -07:00
Diva Canto 9892e115cc Fatpack message on agent transfers: 1 message only (UpdateAgent) containing the agent and all attachments. Preserves backwards compatibility -- older sims get passed attachments one by one. Meaning that I finally introduced versioning in the simulation service. 2011-04-28 20:19:54 -07:00
Justin Clark-Casey (justincc) cd7517ccb9 Stop CHANGED_INVENTORY firing twice if a notecard is edited in prim.
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.
2011-04-28 22:59:12 +01:00
Justin Clark-Casey (justincc) 50aa93137d Fix a bug where physical objects rezzed with an initial velocity by script 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
2011-04-28 00:59:21 +01:00
dahlia 16f6f55f2d network traffic reduction - decrease update frequency for moving avatars when velocity is unchanged 2011-04-26 16:22:44 -07:00
Mic Bowman 1505fbb647 Add back the high prioritization for other avatars in the
BestAvatarResponsiveness prioritizer.
2011-04-26 08:54:05 -07:00
Mic Bowman 77ab7ce084 Fixed the transmission of throttles from root agent to child
agents. Child throttles are based on the number of child agents
known to the root and at least 1/4 of the throttle given to
the root.
2011-04-25 15:11:29 -07:00
Mic Bowman 1d7c83c39f Merge branch 'master' into queuetest 2011-04-25 08:41:21 -07:00
Mic Bowman a3bd769cb3 Added a second immediate queue to be used for the BestAvatar policy
and currently used for all of an avatars attachments by the other
policies. Also changed the way items are pulled from the update queues
to bias close objects even more.
2011-04-22 14:55:23 -07:00
Melanie 398bb2149a Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2011-04-21 23:04:01 +01:00
Melanie 13d6e05d5a Implement agent limits 2011-04-21 23:03:38 +01:00
Justin Clark-Casey (justincc) e36cab99fd minor: small amount of method doc and some commented out odds and ends 2011-04-21 18:45:05 +01:00
Justin Clark-Casey (justincc) 63c1b7e475 Alter uuid gather so that it properly analyzes coalesced objects.
This should correct save all the assets required for the items within the coalesced objects in an IAR.  This should also correctly gather the items on hypergrid takes.
2011-04-21 18:12:29 +01:00
Mic Bowman 7759bda833 Added an "immediate" queue to the priority queue. This is
per Melanie's very good suggestion. The immediate queue is
serviced completely before all others, making it a very good
place to put avatar updates & attachments.

Moved the priority queue out of the LLUDP directory and
into the framework. It is now a fairly general utility.
2011-04-20 21:58:49 -07:00
Justin Clark-Casey (justincc) 71114d4ad1 refactor: rename DeleteToInventory() to CopyToInventory()
DeleteToInventory() is misleading - it is the caller that decides whether to delete or not
2011-04-18 21:34:26 +01:00
Mic Bowman 452ae375f0 Merge branch 'master' into test-merge0418 2011-04-18 11:29:43 -07:00
Justin Clark-Casey (justincc) 66a62678e5 get rid of all traces of the now used mock service infrastructure 2011-04-15 01:37:27 +01:00
Justin Clark-Casey (justincc) 54e8855819 remove mock asset service for tests in favour of always using the real one 2011-04-15 01:23:26 +01:00
Justin Clark-Casey (justincc) a0d80140f2 Make all the objects in a coalescence reappears after being loaded from an IAR. This still doesn't work proprerly since some required textures/contained item assets might be missing.
From pure code inspection, it looks like the uuid gatherer may get most asset uuids because the scene object serializer naively pulls non-root parts from all contained scene objects into one mega-object.  However, root part uuids may well still be missing, and there may be other odd artifacts from this bug.
It appears that storing the size of the coalescence and the offsets is redundant, since one can work out this information from the position data already in the scene object groups.
2011-04-15 00:42:06 +01:00
Justin Clark-Casey (justincc) 4b05e667cb Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-04-14 20:15:34 +01:00
Mic Bowman 22b307ea1c Merge branch 'master' into queuetest 2011-04-14 11:59:25 -07:00
Justin Clark-Casey (justincc) aaf9125869 simplify coalesced object tests by using existing scene object set up utils
this change makes it possible to set an absolute position on a group before it is put into a scene.
2011-04-14 17:33:55 +01:00
Mic Bowman 6ed6b46aad Comment out the warning if the prioritizer runs without a fully
initialized scene presence. Not sure why we are dumping updates
to a client that isn't there yet...
2011-04-13 21:01:51 -07:00
Mic Bowman 3fe22126ca First pass at moving object property requests into a queue similar
to the entity update queue. The number of property packets can
become significant when selecting/deselecting large numbers of
objects.

This is experimental code.
2011-04-13 15:37:25 -07:00
Justin Clark-Casey (justincc) c81f5bfc5c Adjust the quanterions used in the rez coalsced object tests to get sensible bounding box and offset numbers.
Extend test to check position of objects in the rezzed coalescence.
2011-04-13 22:29:12 +01:00
Justin Clark-Casey (justincc) 68cc5b46fe refactor: move code to obtain the coalescence size and object offsets into CoalescedSceneObjects from the serializer. 2011-04-13 21:48:16 +01:00
Justin Clark-Casey (justincc) 58efd761d1 Add coalesced scene objects class and serializer. This is currently only used by the TestRezCoalescedObject() regression test.
This structure matches the existing one for SceneObjects and will allow code to be reused by the uuid gatherer, other tests, etc.
Test is not yet fully implemented due to a bug in rezzing coalesced objects where they all get the same name as the item.
Only one object should get the same name as the item, which appears to be the one selected last when the the objects were coalesced in the first place.
This bug will be addressed shortly.
2011-04-13 21:17:43 +01:00
Diva Canto 5c870fce54 Bug fix in object serialization -- sculpt data was wrong. 2011-04-12 19:45:33 -07:00
Justin Clark-Casey (justincc) b0889ed92a refactor: simplify bRayEndIsIntersection boolean set from RayEndIsIntersection byte 2011-04-12 22:30:43 +01:00
Justin Clark-Casey (justincc) 8e0d2cc43b If an object is rezzed directly from a prim inventory then give it the rotation it was stored with. 2011-04-12 22:21:46 +01:00
Justin Clark-Casey (justincc) 3ba5eeb6c3 Allow a null rotation to be passed in to RezObject so that we can control whether to use the serialized rotation or not. Not used yet. 2011-04-12 22:15:40 +01:00
Justin Clark-Casey (justincc) 98d7de22dc Fix (add) ability to rez objects by dragging them out of another prim's 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.
2011-04-12 18:31:41 +01:00
Mic Bowman ebc249e3be Changed the "not in scene" check in the prioritizier to just
a warning. There appears to be a race condition on slow logins
that attempts to prioritize before the scene presence is fully
initialized.
2011-04-10 17:02:40 -07:00
Mic Bowman 0bd06d8ba8 Fixed the prioritizer functions for the new priority queues 2011-04-10 16:57:02 -07:00
Mic Bowman 77cf9405de Implements adaptive queue management and fair queueing for
improved networking performance.

Reprioritization algorithms need to be ported still. One is
in place.
2011-04-10 16:57:02 -07:00
Justin Clark-Casey (justincc) 9bc2705f37 Fix bug where on duplication, the root part local id was continually used in populating the local id scene object index instead of each part's local id 2011-04-06 20:52:36 +01:00
Justin Clark-Casey (justincc) 8318915d7e Signal prim count taint if the AbsolutePosition of a scene object changes.
This updates prim counts correctly if an object is moved by something other than an avatar (e.g. scripts, region modules)
Create TestMoveOwnerObject() regression test for this case.
2011-04-06 20:48:00 +01:00
Justin Clark-Casey (justincc) 2497962360 Change some text to make the autoreturn mechanism more obvious, and align with the fact that it's one word rather than two. 2011-04-05 22:25:00 +01:00
Justin Clark-Casey (justincc) 0e465da187 remove now unused individual LandData prim counts.
However, the calls to the land management module to record prims need to remain, since they were also being used to return owner object lists, etc.
This is probably why prim counts were being done there in the first place.
2011-04-05 21:25:54 +01:00
Melanie b385d4aa03 Implement taking of coalesced objects.
WARNING!!!!!
You can TAKE them, but you can't REZ them again. Only the first of the contained
objects will rez, the rest is inaccessible until rezzing them is implemented.
Also, rotations are not explicitly stored. This MAY work. Or not.
2011-04-03 20:24:44 +01:00
Melanie e8e940e33e Make CHANGED_OWNER work for deeding and god-mode in-world change 2011-04-03 14:16:41 +01:00
Melanie 3a113f9902 A stab at making CHANGED_OWNER work 2011-04-01 22:04:29 +01:00
Justin Clark-Casey (justincc) 8022400bd4 Remove unused Datastore parameter from RegionInfo (legacy from early 2008) 2011-03-31 22:16:09 +01:00
Justin Clark-Casey (justincc) f2d2470c25 When an object is duplicated, add it to the full/local id SOG indexes as well as Entities 2011-03-26 02:24:32 +00:00
Justin Clark-Casey (justincc) 26d16567e1 Make SceneGraph.ForEachSOG() execute once for each SOG, not once for each prim (e.g. a SOG with 3 prims would have the action executed three times).
To do this, a new SceneObjectGroupsByFullID index in SceneGraph which just index's prims by their root part UUID, in order to avoid the inefficiency of filtering existing lists.
Existing callers to SceneGraph.ForEachSOG() did not fail due to the multiple per SOG action executions - they were probably just much less efficient.
Code suggests that no callers expected ForEachSOG() to execute actions on sog multiple times
2011-03-26 00:53:19 +00:00
Justin Clark-Casey (justincc) f30bf429c2 refactor: rename SOG collections in SceneGraph to make it clearer that they are indexing each part's UUID, not just the root part. 2011-03-26 00:42:48 +00:00
Justin Clark-Casey (justincc) d011896341 Add generic EventManager.OnObjectAddedToScene and get PrimCountModule to listen for that rather than EventManager.OnParcelPrimCountAdd
OnParcelPrimCountAdd had the wrong semantics for the PrimCountModule - it was invoked for every entity in the scene, not just new ones, which would screw up the untainted count.
Extend automated test for this scenario.
2011-03-23 21:53:14 +00:00
Justin Clark-Casey (justincc) b34743e5fe Add an initial confidence-building TestAddObject() for prim counts. 2011-03-22 23:47:36 +00:00
Justin Clark-Casey (justincc) 7acade00b9 On initial setup, include estate and regions names in questions to make it clearer what they relate to. 2011-03-21 23:26:35 +00:00
Justin Clark-Casey (justincc) b821f748ac For objects loaded from an IAR, make sure the CreatorID points towards the OSP resolved ID if newer CreationData is not present.
This should resolve issues where the creator for rezzed objects was being shown as "Unknown user" where previous behaviour was to show the OSP resolved account.
This is being done by parsing the serialized objects and updating the CreatorID if no CreationData exists.  This operation might be expensive for sculpties where the sculpt texture is inlined with the object data.  Will just have to see.
This relies on the IAR streaming inventory data before asset data (as is currently the case).  Will need to introduce more stringent checks for file order on loading (much like JAR zips must start with the manifest file).
This is for IAR loading only.  Tests updated to check this behaviour.
2011-03-10 21:56:15 +00:00
Justin Clark-Casey (justincc) 9456bb77fb Upgrade nunit.framework.dll to version 2.5.9. Fix up tests appropriately.
This version removes the NUnit.Framework.SyntaxHelpers namespace, so any modules with their own tests will need to delete this using statement.
2011-03-09 23:25:24 +00:00
Melanie cea47491de Fix a few little things 2011-02-27 19:49:23 +00:00
Justin Clark-Casey (justincc) 2b04cab1ee change some log messages from info to debug 2011-02-25 02:15:06 +00:00
Justin Clark-Casey (justincc) 2f5394e70d Fix bug where avatars in other regions would not always show up on the mini-map 2011-02-24 22:33:54 +00:00
Mic Bowman 5a16fa882c Parameterizes the view distance used to compute and manage
child agents in neighbor regions. This means you can extend
the view on a simulator beyond the default 3x3 regions.

This uses a region default draw distance and should be
replaced at some point by the avatar specified draw distance.
That will require more careful, dynamic recomputation of child
agents every time the draw distance changes.

WARNING: this is experimental and has known instabilities. specifically
all regions "within site" should be running the same default draw distance
or agents will not be closed correctly.
2011-02-22 13:23:54 -08:00
Justin Clark-Casey (justincc) 9e47018cfb Remove test T020_TestMakeRootAgent() which hasn't been active for ages anyway
This test was non-viable.  Keeping inactive T021_TestCrossToNewRegion() around for now since it's still useful for reference purposes in constructing a future working test.
2011-02-19 00:14:13 +00:00
Justin Clark-Casey (justincc) 60fe3d48ee Put some CapabilitiesModule null checks in Scene
Stop tests setting up a capabilities module by default
2011-02-18 23:50:54 +00:00
Justin Clark-Casey (justincc) 8249d77991 If GridService.GetNeighbours() could not find the region then log a warning rather than causing a null reference on the normal log line
This also extends the TestChildAgentEstablished() test to actually activate the EntityTransferModule, though the test is not yet viable
2011-02-18 23:25:59 +00:00
Justin Clark-Casey (justincc) dd9efc1838 extend TestChildAgentEstablished() test slightly to put in EntityTransferModule. Not yet enabled. 2011-02-18 23:05:56 +00:00
Justin Clark-Casey (justincc) eb699df5f6 On SceneSetupHelpers, go back to calling ScenePresence.CompleteMovement() for the last stage of AddRootAgent() instead of SP.MakeRootAgent()
Going this extra step doesn't appear to cause any test failures.
This is arguably better for test purposes, though at some stage another method may arise which does just call AddRootAgent().
2011-02-18 22:49:19 +00:00
Justin Clark-Casey (justincc) 023f953f39 remove another unused test teardown method 2011-02-18 22:25:45 +00:00
Justin Clark-Casey (justincc) c155f57dbe remove unused test teardown method 2011-02-18 22:22:51 +00:00
Justin Clark-Casey (justincc) c763edf56d separate attachment tests out into their own class 2011-02-18 22:20:08 +00:00
Justin Clark-Casey (justincc) 88da253c94 Add very basic test which invokes the scene update loop once and checks the frame number.
This makes Scene.Update() match its original description of performing a single update, which also matches the semantics of SOG and ScenePresence.
2011-02-18 21:54:44 +00:00
Justin Clark-Casey (justincc) e774679f62 minor: add method doc to a few ScenePresence methods 2011-02-18 21:19:16 +00:00
Justin Clark-Casey (justincc) 4725221435 Stop the avatar sometimes pausing for more than a second on the border when region crossing.
This restores a RemoveFromPhysicalScene() call in ScenePresence.CheckForBorderCrossing() when the agent has been placed in transit.
If we don't remove the agent from the physical scene, then the method continues to be called via ScenePresence.Update()
until the handover of the client between regions is completed.  Since this handover can take more than 1000ms (due to the 1000ms
event queue polling response from the server), this results in the avatar pausing on the border for the entire handover period.
2011-02-18 20:54:00 +00:00
Marck 4f9c3c73ad Add support for new naming syntax of linked regions to osTeleportAgent and osTeleportOwner. 2011-02-17 13:47:13 +01:00
Melanie 918c12c965 Change the QUERYACCESS method to eliminate spurious access denied messages 2011-02-16 08:06:11 +00:00
BlueWall c75e916ccf Set filter to send proper rotations for root part
This allows the root prim, alone or in a set, to send it's
	rotation. This fixes unsitting the avatar on sit-offsest
	type teleports where the sit target is in the root prim of
	a linkset.
2011-02-13 07:42:53 -08:00
Diva Canto ac7bc78555 Added emergency monitoring of UDP Outgoing packets thread. Just type "emergency-monitoring on/off" 2011-02-08 12:06:14 -08:00
Diva Canto 98ea78fc77 New command: show pending-objects 2011-02-06 19:39:29 -08:00
Kevin Cozens 034327b51f Send object date to viewer in microseconds (Fixes mantis bug #3990) 2011-02-04 20:55:41 +00:00
Mic Bowman cf24069227 Change UpdateAgent (for changes in agent position) to be sent
once to each simulator rather than once to each region. This
should help with some of the delays caused by multiple outstanding
requests to a single service point.
2011-02-03 12:43:46 -08:00
Melanie 188d86998d Fix up QueryAccess to also check parcels 2011-01-28 04:09:04 +00:00
Melanie d90b0c53ec Fix bumping into sim borders and check estate bans for walking crossings 2011-01-28 02:38:14 +00:00
Melanie b0f641fa15 Make it work 2011-01-27 06:41:07 +00:00
Melanie 17801bd78b Add a TeleportFlags member to SP so we can tell how we got there. 2011-01-27 05:33:46 +00:00
Mic Bowman 240c0eaf1d Remove the RestorePresences functions (which don't seem to be doing
anything) and clean up the code in AddNewClient (so Appearance only
gets assigned once, not three times).
2011-01-26 13:33:34 -08:00
Melanie b91c99b596 Fix script data not being reset as it should be 2011-01-24 03:07:01 +00:00
Diva Canto a07375a7ae Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-01-17 17:41:06 -08:00
Diva Canto c98d1cffe2 Removed the call to sceneViewer.Reset upon MakeRoot and ChildAgentUpdate, because Reset hangs for a long time waiting for the lock. That is a problem in itself -- that long holding of the lock by some thread -- but let's just avoid it altogether. 2011-01-17 17:40:48 -08:00
Justin Clark-Casey (justincc) 3083c517a0 minor: resolve some mono compiler warnings 2011-01-18 00:29:10 +00:00
Justin Clark-Casey (justincc) c544f0d0c5 Prune some of the excess logging for client logins.
Didn't touch the appearance related stuff.
2011-01-18 00:25:24 +00:00
Diva Canto 4bcee1dfb4 Revert "DEBUG DEBUG DEBUG"
This reverts commit 59c2cd04ba.
2011-01-17 13:07:02 -08:00
Diva Canto 59c2cd04ba DEBUG DEBUG DEBUG 2011-01-17 12:35:19 -08:00
Melanie 30320077a2 Fix slam bits being lost when editing perms in prim inventory 2011-01-14 03:20:47 +00:00
Melanie 705f4e1e4b Dont' trust the viewer! Fix a permission slam error caused by trusting
the viewer too much.
2011-01-12 21:46:49 +00:00
Melanie 914e4b319e Fix direct item give permissions 2011-01-12 21:39:13 +00:00
Melanie 7cfe17b5b3 Partial permissions fix for boxed items. 2011-01-12 21:25:38 +00:00
Melanie dd154f7403 Fix god mode perms adjustment 2011-01-12 21:21:34 +00:00
Diva Canto eab0951a59 Fixes the issue of hung archives. Problem was with SceneObjectSerializer.
Also fixes a buglet in scene load xml command, where it was given the wrong argument index for filename.
2011-01-08 15:49:51 -08:00
Diva Canto a1c5de0f94 Try to fix a IAR problem reported by nebadon, where save iar seems stuck forever. 2011-01-07 12:32:47 -08:00
Diva Canto c18bcf3d8d A bit more frugal on the caller side of closing agents, now that the receiving end is async. No need for so much concurrency. 2011-01-07 10:25:49 -08:00
Diva Canto 5b43f9cac4 HG bug fix. Must wait for client's UDP contact before getting scene presence. 2011-01-06 12:47:13 -08:00
Diva Canto fbde9b1136 Note to self: try to make only 3 things at the same time. 2011-01-04 11:33:15 -08:00
Diva Canto db55859125 Guard against null Animator. 2011-01-04 11:30:08 -08:00
Melanie 5286198650 Add permissions hooks for object transfers 2011-01-03 19:42:58 +00:00
Melanie e1664b8d38 Fix child agent scoping 2011-01-03 19:42:26 +00:00
Melanie 1f4d0ad460 Fix up a prior fix (refix the fixed fix :) 2010-12-30 02:31:05 +00:00
Diva Canto d42e0c39fc Bug fix in neighbors: serverURI now always has a trailing '/'... neighbors were not getting notified. 2010-12-29 07:36:39 -08:00
Diva Canto 3eaaaa0d99 One more pass at object inventory. This time, fix SceneObjectPartInventory so that it makes sure that the file is added to Xfer's before it signals the client to come and get it. This allows the simplification of the logic of Xfer's. 2010-12-24 08:50:00 -08:00
Teravus Ovares (Dan Olivares) c108968020 * Cleanup from a commit a while ago. 2010-12-23 13:17:33 -05:00
Melanie 1c3e77b728 What is the point of using different types to express the same damn thing? 2010-12-21 22:58:52 +00:00
Melanie 19181c019a Another good catch. Update file name serial. 2010-12-21 22:56:48 +00:00
Melanie ec8d1d0131 Added a missed return. Thanks diva! 2010-12-21 22:49:38 +00:00
Melanie a31b96e1ba Fix up merge artifacts 2010-12-21 20:54:28 +00:00
Melanie 043dace118 Make prim inventories a bit more sane 2010-12-21 20:49:31 +00:00
Diva Canto c082254b9d Put the coarse location updates back to 50 frames, otherwise the dots on the mini-map come and go noticeably. Also increased the Velocity a bit; I had decreased it to 0.885; now it's 0.9. 2010-12-19 19:29:07 -08:00
Justin Clark-Casey (justincc) 3d32f05cde remove mono compiler warning: if (sop.Color != null) always returns true as sop.Color is a value type. 2010-12-17 22:40:11 +00:00
Justin Clark-Casey (justincc) 3b1c91c24b remove mono compiler warnings 2010-12-17 22:35:08 +00:00
Diva Canto ed26376ec5 Yet more things out of the main Update thread loop and into threadlets. This time, SendPrimsUpdate. Plus a few more tweaks on triggering actions from the Update loop. #LoginLag. 2010-12-14 20:15:26 -08:00
Diva Canto 74c68474e0 Another attempt at moving heavy computation away from the Update loop. #LoginLag 2010-12-14 18:44:26 -08:00
Diva Canto e3262ef5ac Commented out the UpdateLand call from the Update thread loop, because this may be causing the #LoginLag. Attachments taint the prim count. Twice. Each. 2010-12-14 17:50:37 -08:00
Justin Clark-Casey (justincc) 6b135ee371 fix mistake in last change of local.include 2010-12-15 00:14:43 +00:00
Justin Clark-Casey (justincc) 3643be1c97 Rename SceneObjectUserTests to SceneObjectDeRezTests to better reflect its contents 2010-12-14 23:46:02 +00:00
Justin Clark-Casey (justincc) 92727ad596 minor: disable debug logging for previous test 2010-12-14 23:41:36 +00:00
Justin Clark-Casey (justincc) 81bccd6d13 Start implementing a test for 'share with group' object functionality. Not yet complete.
While implementing this, a bug was fixed in scene setup helpers where module RegionLoaded() was called immediately after AddRegion() instead of waiting for all AddRegions() to complete.
Also, XmlRpcGroupsModule non-message functionality will now work without a message transfer module (as indicated in the comments but with a contradictory implementation)
2010-12-14 23:36:34 +00:00
Melanie e47cc10674 Null checking ParentGroup is not needed. It can't be null. 2010-12-14 12:07:35 +00:00
Diva Canto 4bdba0a487 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-12-13 21:36:08 -08:00
Diva Canto b41164b620 This seems to get rid of the stuck PREJUMP animation, as reported by Justin in -dev. Also in this commit, a slight adjustment to the Velocity of SP -- this makes the avie walking feel less jerky for me. Will wait reports from others. 2010-12-13 21:35:40 -08:00
Justin Clark-Casey (justincc) e08da02a0f Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-12-14 00:12:17 +00:00
Justin Clark-Casey (justincc) e62b3dba8a reinstate IAttachmentsModule.UpdateAttachmentPosition() since this is being used by a 3rd party region module and contains non-obvious attachment specific code
There are no functional changes.  UpdateAttachmentPosition() is adapted to the new approach of only saving attachment state on logout
2010-12-14 00:11:41 +00:00
Melanie 9bd7f3b03a Revamp the viewer -> banlist packet processing so fix a number of bugs.
Remove the too coarse CanEditParcel method in favor of a CanEditParcelProperties
method that takes a GroupPowers argument to specify what action is to be
taken. Also, make the method to set parcel data much more granular. Permissions
in a deeded setting should now work.
2010-12-13 20:35:56 +00:00
Melanie d6803e6448 Change some lookups in he Land Management module to make group permissions
work better. Add a generic group permissions hoot to the scene permissions
system.
2010-12-13 20:28:14 +00:00
Marck 7f0350b988 Trigger event with flag CHANGED_LINK when agent sits on objects that have not a sit target defined. This fixes Mantis #4692. 2010-12-12 20:12:34 +01:00
Diva Canto 797ca8d0e7 Fixes the nudge movements! 2010-12-11 17:06:17 -08:00
Diva Canto c42876df67 Revert "Another stab at mantis #5256"
This reverts commit ccb4f958c0.
2010-12-10 23:32:50 -08:00
Diva Canto ccb4f958c0 Another stab at mantis #5256 2010-12-10 23:16:26 -08:00
Justin Clark-Casey (justincc) a918c8df97 fix the minimap sitting avatar location bug
a sitting avatar should have it's offset position added to the scene object, not its absolute position
2010-12-10 03:46:16 +00:00
Melanie 4df1d25d23 Plumb a code path for the entity transfer module to ask a destination scene
whether or not an agent is allowed there as a root agent.
2010-12-09 01:55:32 +00:00
Justin Clark-Casey (justincc) 1fa9399ab8 change doc. trivial commit to get panda to rebuild 2010-12-08 00:41:33 +00:00
Diva Canto 72748746d5 Fixed some inconsistency with trailing /. Made debug messages consistent. Changed the stored region names of HG regions. Increased the size of regionName in DB. 2010-12-05 19:43:24 -08:00
Jonathan Freedman 45cd2e3ef9 Merge branch 'master-core' into mantis5110 2010-12-05 11:49:15 -08:00
Mic Bowman df860516bf Various bug fixes for appearance handling: more aggressive reset of textures and vparams when appearance is not cached and when wearables change. Send appearance to the viewer with initial data.
Cleaned up (and added) debugging.
2010-12-03 23:45:00 +00:00
Justin Clark-Casey (justincc) 7e72afcb3e Only force prim persistence before delete if the prim is the result of an unpersisted delink
This considerably improves delete performance for objects with large linksets
2010-12-03 00:12:59 +00:00
Diva Canto 7d24dbca3c Added some comments. Better than listening to the boring speaker... 2010-12-01 16:01:22 -08:00
Diva Canto f3835fe15c Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-11-29 09:58:20 -08:00
Diva Canto f86c438653 Preservation of creator information now also working in IARs. Cleaned up usage help. Moved Osp around, deleted unnecessary OspInventoryWrapperPlugin, added manipulation of SOP's xml representation in a generic ExternalRepresentationUtils function. 2010-11-29 08:43:33 -08:00
Diva Canto ca8d015733 Changed the parser for InventoryItem deserialization. Moved some utility functions around. 2010-11-27 11:40:54 -08:00
Melanie 63e2c3b2d6 Reformat an overzealous comment. Remove end of line marks and reference to the
Mantis solved, as that isn't needed to understand the code. Reformat the
comment for 80 col screens.
2010-11-27 01:28:02 +00:00
Micheil Merlin 6ed63487d9 llUnsit position fix 4063 (updated 11-20-2010) 2010-11-27 02:05:44 +00:00
Justin Clark-Casey (justincc) e0866faacc Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-11-27 01:27:46 +00:00
Mic Bowman 541a7660e0 Refactor appearance and avatar data sending code. Paritioning the routines into "one-to-many" and "many-to-one" makes it possible to call the right function on presence creation (both child and root) and when a child agent is promoted to root. This brings the total number of appearance sends down to one or two on login.
Cleaned up the avatar update calls in the groups code. Cleaned up
some commented and debugging code, and a few formating fixes.
2010-11-27 01:14:36 +00:00
Justin Clark-Casey (justincc) 0e311a2104 If we fail to gather asset uuids for a particular asset, log the failing asset id and type 2010-11-27 00:54:09 +00:00
Marck 2827deffe8 Trigger changed event with CHANGED_TELEPORT when teleporting to another region. 2010-11-26 22:46:48 +01:00
Diva Canto 1cbd2842d5 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-11-25 16:27:19 -08:00
Diva Canto ae4b02e115 WARNING: LOTS OF CONFIGURATION CHANGES AFFECTING PRIMARILY HG CONFIGS. Added capability to preserve creator information on HG asset transfers. Added a new HGAssetService that is intended to be the one outside the firewall. It processes and filters the assets that go out of the grid. Also fixed the normal AssetService to do special things for the main instance (console commands, etc). Moved HGInventoryService to OpenSim.Services.HypergridService. Changed the way the login service gets the ServiceURL configs. 2010-11-25 11:14:16 -08:00
Melanie 57c4def254 Change all restarting to use the restart module. Remove hardcoded behavior 2010-11-25 03:16:52 +00:00
Jonathan Freedman bc51dfc45e Merge branch 'master-core' into mantis5110 2010-11-23 22:27:54 -08:00
Justin Clark-Casey (justincc) 8d79a39d5b Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-11-23 04:27:06 +00:00
Justin Clark-Casey (justincc) bbc291dfdf adapt tests to use DeRezObjects() since DeRezObject() has recently disappeared 2010-11-22 23:07:30 +00:00
Justin Clark-Casey (justincc) 34b13a4765 add basic tests to check that under default permissions module owner can delete objects and that non-owners (who are also not administrators, etc.) cannot 2010-11-22 22:54:13 +00:00
Marck e1c72cedb3 Let CHANGED_SCALE also trigger when editing prims and linksets with the viewer's edit tools.
This event used to trigger only when the scale was changed with a script.
2010-11-22 19:38:44 +01:00
Marck d63965cf94 Let CHANGED_SHAPE trigger. This fixes Mantis #1844. 2010-11-22 19:38:44 +01:00
Jonathan Freedman b7f5e82843 Merge branch 'master-core' into mantis5110 2010-11-21 20:01:48 -08:00
Jonathan Freedman 562147475c Merge https://github.com/opensim/opensim into mantis5110
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2010-11-21 19:51:23 -08:00
Diva Canto c617d658dd Added creator info across the board -- TaskInventoryItems and InventoryItems themselves. Tested. Seems to be working, main tests pass. Nothing done for IARs or HG transfers yet -- this only works for OARs for the time being.
New migration in inventory table in order to make CreatorID varchar(255).
2010-11-21 17:19:24 -08:00
Diva Canto 6a9ae9e7cb Global creator information working on MySQL DB and on load/save OARs. Creator name properly shown on the viewer as first.last @authority.
New option added to save oar -profile=url. Migration on RegionStore making CreatorID be 255 chars.
Moved Handling of user UUID -> name requests to a new module UserManagement/UserManagementModule.
2010-11-21 13:16:52 -08:00
Melanie 390c3a3b6f Prevent leftover attachments from clogging up the pipes 2010-11-16 22:18:35 +00:00
Melanie 7bb005b0d1 Change the way attachments are persisted. Editing a worn attachment will now
save properly, as will the results of a resizer script working. Attachment
positions are no longer saved on each move, but instead are saved once on
logout. Attachment script states are saved as part of the attachment now
when detaching.
2010-11-16 21:01:56 +00:00
Melanie 98ba079e95 Diva needs a spanking! Serializing OldItemID breaks script state persistence in agent inventory. 2010-11-16 01:35:16 +00:00
Melanie bfc128529c Prevent teleporting to a region when the egent is banned in all parcels 2010-11-10 16:20:19 +00:00
Melanie 22144eb8f7 Fix parcel bans to work only on the avatars they're supposed to work on instead of pushing all avatars, even the ones that are allowed. 2010-11-09 22:15:59 +00:00
Jeff Ames ae9c4a4d11 Formatting cleanup. 2010-11-08 07:48:35 -05:00
Melanie 798abd1508 Reinstate a lost fix 2010-11-08 03:06:58 +00:00
Melanie 6056ae8d88 Fix merge artefacts 2010-11-08 02:58:33 +00:00
Melanie 18b27408d6 Prevent plants from being treated like dropped attachments and removed
from the sim.
2010-11-08 02:39:06 +00:00
Melanie 4f6dd8bda3 Call the cleanup after saving attachment states, so that the attachments
don't get killed before they can be saved
2010-11-08 02:38:15 +00:00
Melanie 2f58d56137 Call the Cleanup when an agent logs out, when an agent leaves and just
before an agent logs in directly. Intentionally not calling this from MakeRoot
as that would mess up attachment transfer in teleport
2010-11-08 02:37:28 +00:00
Melanie Thielker 2317b6767b Add a method to delete left over / dropped attachments 2010-11-08 02:36:51 +00:00
Jonathan Freedman 4f40374464 Merge git://github.com/opensim/opensim into mantis5110 2010-11-05 19:10:02 -07:00
Melanie 644eb9fd7f Fix playing sound from HUDs 2010-11-05 13:45:28 +00:00
Melanie 57eabe9d46 Actually calculate the height before setting it, this isn't done automatically
on incoming transfers in all cases.
2010-11-03 00:47:22 +00:00
Melanie 7d551e27ca Trying to prevent a wrong physical actor size 2010-11-03 00:01:47 +00:00
Melanie d555c373d8 Fix avatar height management 2010-11-02 23:39:45 +00:00
Melanie 78a0ed3ff9 Fix sitting and standing up 2010-11-02 21:28:24 +00:00
Diva Canto 9f5ab3b965 Old deserialization can't deal with commas in flag fields. Making use of -version option on save oar command. Bumped archives version to 0.5; version < 0.5 generates flag fields without commas. Everything else is identical. 2010-11-02 12:05:24 -07:00
Jonathan Freedman 95a0ea78f9 Merge branch 'master' into mantis5110 2010-10-30 18:28:07 -04:00
Melanie 623cee1ffc Move physics actor creation to after SetHeight to try and prevent
bowlegginess. Didn't work but is better this way anyway.
2010-10-30 19:17:52 +01:00
Jonathan Freedman 9e7d3e0f25 Merge branch 'master' into mantis5110 2010-10-29 23:59:16 -04:00
Jonathan Freedman c8d65c359f Merge branch 'master' into mantis5110
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2010-10-29 23:58:14 -04:00
Jonathan Freedman d219317074 Merge branch 'master' into mantis5110
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2010-10-29 23:12:51 -04:00
Justin Clark-Casey (justincc) 09705514ff tweak a few more scene presence logging messages for consistency 2010-10-29 23:52:25 +01:00
Justin Clark-Casey (justincc) e66ec432af Rationalize the logging messages from the merged appearance branch, commenting out most of them as per Mic 2010-10-29 23:45:10 +01:00
Justin Clark-Casey (justincc) abcde41c0d Merge branch 'justincc-dev' 2010-10-29 23:15:35 +01:00
Justin Clark-Casey (justincc) 25e19ba7e9 add timing report to CompleteScenePresence for diagnostic purposes 2010-10-29 23:03:11 +01:00
Melanie 934e536738 Merge commit 'cmickeyb/dev-appearance' 2010-10-29 21:06:46 +01:00
Master ScienceSim 49fa7e91b9 Clean up some cruft from the last commit. Re-add the initial update
send in the scene presence constructor... need to figure this out
later.
2010-10-29 13:45:59 -07:00
Master ScienceSim f5c9a56c8b Bunch of fixes that reduce the number of times appearance
and avatar data are sent. And the number of times they
are stored.
2010-10-29 13:43:35 -07:00
Melanie 05d2302c62 Merge branch 'dev-appearance' 2010-10-29 20:24:14 +01:00
Master ScienceSim f2c1d0e34f Merge branch 'opensim-master' into dev-appearance 2010-10-28 09:09:42 -07:00
Melanie 1fcac7203d Prevent nullrefs in scene object deletion. Mantis #5156 2010-10-27 20:47:27 +01:00
dahlia a4e95c0717 Merge branch 'master' of ssh://MyConnection01/var/git/opensim 2010-10-26 21:20:18 -07:00
dahlia 5968d343bb Overload Scene.NewUserConnection() to facilitate NPCs and other region specific applications 2010-10-26 21:19:33 -07:00
Jeff Ames a331fd4e24 Formatting cleanup. 2010-10-27 00:01:03 -04:00
Jonathan Freedman 07db35697b Merge branch 'master' into mantis5110 2010-10-24 15:01:01 -04:00
Diva Canto 627d1a42fe Added inner exception handling in Shape deserialization processing, so that the whole Shape processing returns a valid Shape object. 2010-10-23 20:39:41 -07:00
Justin Clark-Casey (justincc) 80f90229e5 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-10-22 23:56:58 +01:00
Justin Clark-Casey (justincc) fe8d3d5a2b Revert "Merge remote branch 'otakup0pe/mantis5110'"
This reverts commit 21187f459e, reversing
changes made to 8f34e46d74.
2010-10-22 23:52:07 +01:00
Jonathan Freedman 38e76d71ac Merge branch 'hg16' into mantis5110 2010-10-22 18:34:50 -04:00
Justin Clark-Casey (justincc) e06acae965 Allow region modules to know which agents actually receive chat 2010-10-22 18:33:19 -04:00
Melanie 004b395d12 Make SImStatsReporter pick ObjectCapacity striaght out of region info 2010-10-22 18:27:49 -04:00
Melanie 700f4ddea4 Change some exception to use ToString(). e.Message is not sufficient to fix
errors. Please don't use e.Message, devs NEED to see the dumps!
2010-10-22 22:55:07 +01:00
Jonathan Freedman d4144bedb8 * change the data exchanged within hypergrid transactions 2010-10-21 23:22:15 -04:00
Master ScienceSim 267f18925d First attempt to get multiple attachments working to support viewer2.
The attachment code appears to work correctly for 1.23 viewers so, in
spite of some big changes in the internal representation, there don't
appear to be regressions. That being said, I still can't get a viewer2
avatar to show correctly.
2010-10-21 16:48:58 -07:00
Melanie 08e14d653e Merge branch 'dev-appearance' of git://github.com/cmickeyb/opensim into dev-appearance 2010-10-21 17:09:42 +01:00
Melanie bb78f1c05a Make SImStatsReporter pick ObjectCapacity striaght out of region info 2010-10-21 15:36:32 +01:00
Jonathan Freedman 017b83d0a3 * remove some spurious debug info
* The last 4 commits are a patch from otakup0pe that's supposed to make URLs better somehow in an effort to make it easier to do hypergrid (I think)..    But as it seems that I'm the only one who was able to apply the patch.. and I looked it over and it doesn't look like it breaks anything via the diffs..     I'll sign off on it.

Signed-off-by: Teravus Ovares (Dan Olivares) <teravus@gmail.com>
2010-10-20 22:36:29 -04:00
Master ScienceSim b1c8d05888 Major refactoring of appearance handling.
AvatarService -- add two new methods, GetAppearance and SetAppearance
to get around the lossy encoding in AvatarData. Preseve the old
functions to avoid changing the behavior for ROBUST services.

AvatarAppearance -- major refactor, moved the various encoding
methods used by AgentCircuitData, ClientAgentUpdate and
ScenePresence into one location. Changed initialization.

AvatarAttachments -- added a class specifically to handle
attachments in preparation for additional functionality
that will be needed for viewer 2.

AvatarFactory -- removed a number of unused or methods duplicated
in other locations. Moved in all appearance event handling from
ScenePresence. Required a change to IClientAPI that propogated
throughout all the IClientAPI implementations.
2010-10-20 16:17:54 -07:00
Jonathan Freedman 94684a2251 * remove some spurious debug info 2010-10-20 02:36:59 -04:00
Diva Canto 8731c2be11 It looks like Vector3s also got written down in lower case at some point in time. Added code to account for that.
17:45:59 - [SceneObjectSerializer]: exception while parsing SitTargetPosition: System.Xml.XmlException: Expecting X tag from namespace , got x and  instead  Line 1, position 2838.
2010-10-19 15:16:29 -07:00
Diva Canto 8acac3d07f Another take related to the previous commit. 2010-10-19 15:07:15 -07:00
Diva Canto 3b2d9a9939 Added code to quaternion deserialization to try to cope with an exception seen in Wright Plaza related to SitTargetOrientation.
17:23:05 - [SceneObjectSerializer]: exception while parsing SitTargetOrientation: System.Xml.XmlException: Expecting X tag from namespace , got w and  instead  Line 1, position 30064.
2010-10-19 14:37:03 -07:00
Diva Canto 684449f783 Added TextureAnimation and ParticleSystem to serialization. 2010-10-19 00:04:02 -07:00
Melanie 43a4b7b735 COmmented the wrong line instead, now I commented them all to be on the safe side 2010-10-19 01:23:25 +01:00
Melanie 5b29b975ee Comment a spammy debug message in the serializer 2010-10-19 00:51:04 +01:00
Diva Canto 7038f2b406 Deleted all [XmlIgnore] from SOP, since those are meaningless now. 2010-10-17 10:41:38 -07:00
Diva Canto 22eff055d4 .NET automagical serialization of SOPs replaced by manual serialization across the board. 2010-10-17 10:35:38 -07:00
Diva Canto 1499607215 Made OARs use the new serialization procedure. (TPs/crossings still on the old one) Added an options argument down the pipeline. For the time being it takes --old-guids as an option to produce <Guid> instead of <UUID>. 2010-10-15 17:27:19 -07:00
Diva Canto 41ce392d9b Added manual xml2 serialization. Rewired only save xml2, not oars yet. Seems to be generating xml's that are successfully parsed. Needs more testing. 2010-10-14 09:05:46 -07:00
Diva Canto 45e0cdfcad Added SOP.MediaUrl and Shape.Media to the deserialization 2010-10-13 15:44:25 -07:00
Diva Canto d890390ecf Comment a debug message so that it doesn't spew the console upon encountering unknown xml elements. 2010-10-13 10:38:34 -07:00
Diva Canto 54a3b8e079 New SOG/SOP parser using XmlTextReader + delegates dictionary. Active for load oar and load xml2, but not for packing objects on crossings/TPs yet. 2010-10-13 08:16:41 -07:00
Melanie f2febb89fc Change the part for sound playback to be the root part / object UUID instead
of the child prim because using the child prim plain doesn't work.
2010-10-10 22:07:36 +01:00
Melanie 4a0911bdbd Guard against locking a nullref to avoid build break 2010-10-08 19:19:07 +01:00
Melanie 5dcbbb726a Change the order of actions to address a possible nullref 2010-10-08 18:40:13 +01:00
Melanie 9a5d0984a5 Fix autoreturn to not return zero objects 2010-10-07 02:16:36 +01:00
Melanie abfede7819 Plumb the path for multiple object deletes 2010-10-06 20:00:51 +01:00
Jeff Ames bc9f793a92 Formatting cleanup. 2010-10-04 21:28:17 -04:00
Melanie 511751a733 I really have to say it again and again: e.Message is NOT enough data for
troubleshooting. It MUST be combined with e.StackTrace, or e.ToString() must
be used.
Fix one more instance of that cr.p
2010-10-03 22:36:27 +01:00
Melanie 29646bcf67 Fix an inventory fetch issue 2010-09-30 02:52:35 +01:00
Melanie 8e547d3491 Prevent setting arbitrary groups on your objects. 2010-09-27 02:11:55 +01:00
Melanie c2a4bdb2fe Fix build break 2010-09-27 01:40:29 +01:00
Melanie aaa4cb64a4 if you can't edit a prim's inventory, you don't need to see the asset ids.
Prevents stealing IDs of animations, sounds and textures from prim
inventories. Prevents copybot from gathering the wearable UUIDs needed for
pirating things from vendors.
2010-09-27 00:34:30 +01:00
Melanie 1f7d68e555 Restrict inventory items added in a transaction to folder belonging
to the connected client.
2010-09-27 00:30:26 +01:00
Justin Clark-Casey (justincc) 6325fa515d Add UUID to physics prim name parameter so that diagnostic messages can be made more useful.
If a separate UUID parameter is better for the future then this can be added later on.
2010-09-25 00:51:40 +01:00
Justin Clark-Casey (justincc) b366ad5012 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2010-09-25 00:00:00 +01:00
Justin Clark-Casey (justincc) 5bcf9ae2f9 If the uuid gatherer fails to find the asset containing gesture metadata, then simply return rather than generating an exception
This matches existing behaviour, though better diagnostics for missing assets may be good later on.
This addresses http://opensimulator.org/mantis/view.php?id=4977
2010-09-24 23:58:37 +01:00
Melanie 2b8c99c2fb Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2010-09-21 04:02:50 +01:00
Melanie 10a37f5be4 Refactor script create permission into the perms module 2010-09-21 04:02:28 +01:00
Justin Clark-Casey (justincc) a85779e477 If the uuid of a SceneObjectGroup (RootPart) is changed before adding to the scene, remove the old uuid reference from m_parts as well as adding the new one.
The separate remove and set operations is SOG.set_UUID() are both locked under m_parts.SyncRoot since they are logically atomic (though this isn't such an issue if the SOG isn't part of a scene)
Added unit test for this behaviour.
Also changed the second m_parts.AddOrReplace() to m_parts.Add().  As the old reference is now removed we never end up replacing an identical uuid.  And if we replace a uuid that's already there (from a child part) then this is an error.
2010-09-21 00:58:54 +01:00
John Hurliman b49cb3355f Fixed a regression in SOG.Copy() 2010-09-16 17:57:00 -07:00