Commit Graph

18008 Commits (e7fa8a4699034a7387049c74edce128180e9f1d2)

Author SHA1 Message Date
Oren Hurvitz 773ffcafc3 Removed "hacktastic" code that is no longer needed.
We no longer set the object's AbsolutePosition in this place, so the IsAttachment hack doesn't do anything anymore.

This resolves http://opensimulator.org/mantis/view.php?id=6936
2014-03-24 12:05:25 +01:00
Oren Hurvitz 62b3bdf0fc When linking two groups, and then deleting the combined group: delete *all* of the combined group's prims, including those that came from the second subgroup
This fixes http://opensimulator.org/mantis/view.php?id=6175
2014-03-24 11:44:48 +01:00
Robert Adams b0cb0ec02f BulletSim: fix problem where axis constraints were also constraining
linear motion.

The code was limiting linear motion to be only in the positive direction
for any axis that was constrained.
2014-03-23 13:08:31 -07:00
Dev Random db83208794 Fix negative stat for Active Scripts
Signed-off-by: Michael Cerquoni <nebadon2025@gmail.com>
2014-03-22 23:02:10 -04:00
Kevin Cozens ff5c38534d Reverting "Set default name for mute list" that was pushed by mistake.
This reverts commit 58def34dbe.
2014-03-22 16:38:48 -04:00
Kevin Cozens 58d7e3b8ed Reverting "Pass method to offline.php" commit that was pushed by mistake.
This reverts commit fe16a72a9a.
2014-03-22 16:31:36 -04:00
Kevin Cozens fe16a72a9a Pass method to offline.php using ?blah instead of /blah/. Avoids issue with Apache web servers running PHP via CGI. 2014-03-22 15:13:03 -04:00
Kevin Cozens 58def34dbe Set default name for mute list module as shown in OpenSim.ini.example 2014-03-22 15:13:03 -04:00
Vegaslon d4dad75a3c BulletSim: Fix jumping while running. Was unintentional taking way all upward target motion for avatar when running.
Signed-off-by: Michael Cerquoni <nebadon2025@gmail.com>
2014-03-22 15:00:48 -04:00
Melanie ebe7726cd7 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2014-03-22 01:49:28 +00:00
Melanie a4d322dcd1 Allow the setting from the environment to take effect if no explicit setting is given.
This is done by calling the constructor only with a directory if one is actually given.
2014-03-22 01:47:48 +00:00
Justin Clark-Casey (justincc) ccf18fd2ef Rename SOG.InSceneBackup to CanBeBackedUp to reflect its actual functionality.
It does not indicate that a SOG has been set to be backed up or not.  It indicates that a SOG can be backed up in principle.
In practice, this was added by lbsa71 in 2007 and is set to always true, albeit as a virtual property.
2014-03-22 01:36:21 +00:00
Dev Random 3d0778bcd6 Allow Mono Plugin Registry setting for Regions
Signed-off-by: Melanie <melanie@t-data.com>
2014-03-22 01:29:51 +00:00
Justin Clark-Casey (justincc) a5800f479e If an object has it's temporary flag unset after being set, put it back in the persistence list.
Effectively uses the patch in http://opensimulator.org/mantis/view.php?id=7060
But also adds a regression test and exposes the necessary property to allow this to work.
2014-03-22 00:29:13 +00:00
Justin Clark-Casey (justincc) 178a5a5585 rename prefix of scene-inventory.<scene-name>.ProcessedFetchInventoryRequests and QueuedFetchInventoryRequests to inventory.httpfetch.*
Actual inventory processing is done with a single set of static structures rather than per scene.
2014-03-21 23:29:31 +00:00
Talun fb312279c9 Mantis 6922: No particles are generated if their size exceeds the maximum allowed size.
This patch ensures that no particle scal value can exceed 4.0
2014-03-21 23:13:34 +00:00
Justin Clark-Casey (justincc) 47e7febebc Add monitored thread last update times as stats in "show stats all"
These have the format server.thread.<thread-name>
2014-03-21 02:06:10 +00:00
H-H-H da25903300 Adding a way to disable/enable the in built Dwell Module 2014-03-20 22:35:50 +00:00
Justin Clark-Casey (justincc) 7f027552ec If we find an existing suitcase folder in HGSuitcaseInventoryService.GetRootFolder(), then return that as a response rather than null.
Fixes a regression from commit 346644016c (Fri Nov 15 23:10:59 2013)
This is actually the reverse of zadark's patch in http://opensimulator.org/mantis/view.php?id=6969
But I'm assuming that was a mistake since clearly we should be returning this data - this was original behaviour
2014-03-20 20:36:47 +00:00
Justin Clark-Casey (justincc) d04bb3ca9b Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2014-03-20 20:15:57 +00:00
Talun bd6f734d3a Mantis 6974 PERMISSION_TRACK_CAMERA should be implicit on attach.
http://wiki.secondlife.com/wiki/Run_time_permissions
This change makes PERMISSION_TRACK_CAMERA implicit on attach
2014-03-20 20:11:26 +00:00
Michael Cerquoni b5f94c72b9 Allow MaptileStaticFile path to be set to anywhere and not force it to bin/maptiles 2014-03-19 11:16:52 -04:00
Jak Daniels 61353dde80 Allow Region specific static maptiles to be loaded from file. 2014-03-18 22:18:50 -07:00
Justin Clark-Casey (justincc) cf97535d9e Revert "Simplify DoubleQueue to eliminate redundant sempahore work."
This reverts commit 52b7b40034.

Got the semantics wrong - the sempahore is required so that the blocking thread waits for a signal.
2014-03-19 01:40:56 +00:00
Justin Clark-Casey (justincc) 52b7b40034 Simplify DoubleQueue to eliminate redundant sempahore work.
Exclusion is already guaranteed by the lock on m_syncRoot.
Semaphore could not allow more than one thread in these sections anyway since the underlying SDK structures are not thread-safe.
2014-03-19 00:48:13 +00:00
Justin Clark-Casey (justincc) 1497b75361 minor: Put ProcessedFetchInventoryRequests and QueuedFetchInventoryRequests in stats category "scene-inventory" instead of "scene"
To distinguish from general scene stats
2014-03-19 00:37:06 +00:00
Justin Clark-Casey (justincc) 9858766516 minor: Make "stats show" an alias for "show stats" command. 2014-03-19 00:35:49 +00:00
Justin Clark-Casey (justincc) e6080a38c5 Rename "debug stats record" command to "stats record" for consistency. Move from debug to general command category 2014-03-19 00:29:36 +00:00
Justin Clark-Casey (justincc) 1d0a9e521c Allow a snapshot of stats to be dumped to a file with a "stats save" command 2014-03-19 00:28:57 +00:00
Justin Clark-Casey (justincc) fad1d70180 Add httpserver.<port>.QueuedPollResponses and httpserver.<port>.ProcessedPollResponses statistics 2014-03-18 23:47:33 +00:00
Justin Clark-Casey (justincc) 9e0d419239 minor: Correction to description of QueuedPollResponses since this covers long poll and other 'poll' types 2014-03-18 23:24:22 +00:00
Justin Clark-Casey (justincc) eed343ed8a Add httpserver.<port-number>,QueuedPollResponses stat
This shows the number pf poll responses queued for processing.
2014-03-18 23:21:07 +00:00
Justin Clark-Casey (justincc) 7df325c275 Extend locking in BlockingQueue to cover operations that are not guaranteed to be thread-safe 2014-03-18 23:05:49 +00:00
Justin Clark-Casey (justincc) a660c0a750 Add scene.<scene-name>.ProcessedFetchInventoryRequests
This shows the number of requests that have been processed.
These have not necessarily been sent back to the request since this is done separately by the PollServiceRequestManager
2014-03-18 20:59:11 +00:00
Justin Clark-Casey (justincc) 8ce3fa646b Allow "show stats" console command to take a full stat name and display only that stat.
For example, scene.test.RootAgents will show only the RootAgents stat in the scene named "test"
2014-03-18 20:21:47 +00:00
Justin Clark-Casey (justincc) e82d394ddf Add scene.<scene-name>.QueuedFetchInventoryRequests stat
This is to aid in detecting whether there are fetch inventory requests remaining to be processed.
2014-03-18 20:10:41 +00:00
Justin Clark-Casey (justincc) d5f5649750 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2014-03-18 20:09:15 +00:00
Justin Clark-Casey (justincc) c605c7a7b7 Lock m_syncRoot on DoubleQueue.Count. This is not documented as a thread-safe operation 2014-03-18 19:54:07 +00:00
Melanie Thielker a53272c5fb Add delete maptile ability to MapImageService - yet untested 2014-03-18 00:50:00 +00:00
Justin Clark-Casey (justincc) ae56b946cf Fix a bug in previous commit 01520bb where I accidentally saved OtherCleanTime instead of Dwell 2014-03-18 00:34:40 +00:00
Justin Clark-Casey (justincc) 01520bbb3e Save and load dwell parcel stat in MySQL DB adaptor. Field in table already exists!
The SQLite database adaptor was loading and saving dwell whilst MySQL was not, even though the field already exists in the db table.
2014-03-18 00:02:55 +00:00
Justin Clark-Casey (justincc) f3e177814a Add regression test for http inventory fetch.
Involved some restructuring to allow regression tests to dequeue inventory requests and perform poll responses synchronously rather than async
2014-03-17 20:51:35 +00:00
Justin Clark-Casey (justincc) 873eee5431 Implement osForceBreakAllLinks().
Identical to llBreakAllLinks() except that it doesn't require the script to have link permissions.
2014-03-13 00:04:20 +00:00
Justin Clark-Casey (justincc) 6a279feb2f Only allow llBreakAllLinks() to work if script has received PERMISSION_CHANGE_LINKS
As per http://wiki.secondlife.com/wiki/LlBreakAllLinks
Same as existing llCreateLink() and llBreakLink()
2014-03-12 23:54:20 +00:00
Justin Clark-Casey (justincc) 296d63e20b Implement osForceCreateLink() and osForceBreakLink()
These are identical to llCreateLink() and llBreakLink() except that they don't require script permissions.
However, osForceCreateLink() still requires that linked and linkee still have the same owner.
There's also an AutomaticLinkPermission setting in [XEngine] that could be set to true to prevent the LSL function checks.
But this doesn't allow the finer control over which users/scripts, etc. can do this that the OSSL functions provide.
2014-03-12 23:05:16 +00:00
Justin Clark-Casey (justincc) beba20846f When sending group notices through group messaging, allow the agent ID to use for fetching group data to be different from im.fromAgentID
This is because xmlrpcgroups currently always checks visibility for the requesting agent ID (unlike Groups v2, which can accept UUID.Zero)
But group notice IMs have a from agent which is the group rather than the sending agent.
Further addresses http://opensimulator.org/mantis/view.php?id=7037
2014-03-12 19:31:04 +00:00
Dev Random 7112ee0015 Enable MapImageServiceModule with no refresh 2014-03-11 23:52:11 +00:00
Justin Clark-Casey (justincc) 86630a1b70 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2014-03-11 23:39:07 +00:00
Justin Clark-Casey (justincc) d975b42f6a Instead of auto-creating a parcel on request if one doesn't cover a given location, fill in gaps or extend existing parcel right after initial data load.
This is in line with simpler and still existing behaviour where a default parcel is created if no parcels are in storage at all.
Making this change as another step to address current problems with spurious parcels occasionally being created.
Also adds regression tests for different load behaviours depending on existing stored parcel data.
Relates to http://opensimulator.org/mantis/view.php?id=7035
2014-03-11 23:38:22 +00:00
Robert Adams 8edf4225f3 varregion: remove serialization of region terrain to floats when sending patches.
This should eliminate much memory thrashing and CPU usage while sending initial
terrain.

The old way of passing terrain was to convert it to an array of floats. This is
really bad for large terrain (think 4096x4096 floats). This change passes a dummy
float array since the real region info is used anyway and the floats are ignored.
(The ignoring the terrain floats is a kludge so as to not change IClientAPI.)
2014-03-11 07:12:47 -07:00
Robert Adams 742f505440 Change terrain update sending to be triggered by frame tick rather
than everytime terrain is changed.

The TerrainModule now hooks the frame event and, if terrain has changed,
sends terrain updates to the clients. This polling pattern replaces
the previous push on change pattern and will make it easier to do per
client throttling and per scene presence terrain update ordering.
2014-03-10 22:05:18 -07:00
Oren Hurvitz 0237d9113d Don't start KeyframeMotion timers until all the regions are ready. This prevents problems in megaregions (prims that think they've crossed over to other regions). 2014-03-11 00:55:58 +00:00
Oren Hurvitz 120f872d2b After an object with KeyframeMotion is copied into inventory, resume the motion (previously it remained stopped) 2014-03-11 00:43:22 +00:00
Justin Clark-Casey (justincc) 932c9e757b Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2014-03-11 00:16:31 +00:00
Justin Clark-Casey (justincc) 77e7bbcbf7 Send group notices through the same messaging module mechanism used to send group chat to avoid timeout issues when sending messages to large groups.
Only implementing for XmlRpcGroups initially to test.
May require MessageOnlineUsersOnly = true in [Groups] to be effective.
In relation to http://opensimulator.org/mantis/view.php?id=7037
2014-03-11 00:11:18 +00:00
Dev Random 9de3fe9410 Add Varregion support to osGetRegionSize OSSL function
Signed-off-by: Michael Cerquoni <nebadon2025@gmail.com>
2014-03-07 17:48:07 -05:00
Justin Clark-Casey (justincc) 8225e3f40c Remove try/catch in LandManagmentModule.GetLandObject() - this is very old code and the caught exceptions can no longer occur. 2014-03-07 01:41:31 +00:00
Justin Clark-Casey (justincc) 3c05d67094 Lock m_landlist whilst loading parcels from storage to prevent a race against any parcel auto-creation in GetLandObject() 2014-03-07 01:36:06 +00:00
Justin Clark-Casey (justincc) 6b7625a56b Only auto-create a land parcel when there is none in a specified tile if there is more than 1 existing land parcel.
This is because there are still issues with bad parcels being generated in http://opensimulator.org/mantis/view.php?id=7035
Theorizing now that it's possible that something is calling GetParcel() before any parcel data has been loaded from persistence.
2014-03-07 01:23:19 +00:00
Justin Clark-Casey (justincc) 71918eeab4 Add regression test for sending group notices via xmlrpc groups connector. 2014-03-07 01:04:54 +00:00
Justin Clark-Casey (justincc) ddd38a3dea Add scene name to bad parcel add logging 2014-03-06 19:12:16 +00:00
Justin Clark-Casey (justincc) 58c0ed78d4 refactor: Simplify land object by using c# get/set auto-properties where applicable. 2014-03-06 02:12:58 +00:00
Justin Clark-Casey (justincc) 470d053443 minor: slightly simplify code in LandObject.ContainsPoint() 2014-03-06 00:51:39 +00:00
Justin Clark-Casey (justincc) ed14e97bb4 Remove array initialize calls in LMM - these are unnecessary as the VM already does this. 2014-03-06 00:46:16 +00:00
Justin Clark-Casey (justincc) aa2fb1ec25 minor: Increase size of parcel name field in "land show" console command output. Construct table using CDT rather than string formats 2014-03-06 00:40:24 +00:00
Justin Clark-Casey (justincc) 14569992e1 Prevent adding a land object if it overlaps any existing objects that have not had their bitmaps adjusted.
This is to prevent an immediate problem in http://opensimulator.org/mantis/view.php?id=7035 where a development code bug occasionally overlays all the existing parcels with a blank parcel owned by the estate manager and to gather more data.
My guess is that this parcel is being created by the new code in LandManagementModule.GetLandObject(), probably some race between threads since this only happens occasionally.
Adds regression tests for this case and for parcel subdivide.
2014-03-06 00:11:13 +00:00
Justin Clark-Casey (justincc) 4e6f7435d0 Add UUID and ready status (whether region has finished starting up) to "show regions" console output. 2014-03-05 01:23:48 +00:00
Justin Clark-Casey (justincc) 39ed382ddf Don't request a terse update after local teleport - this will be done by the main frame loop anyway and has the potential to race that thread. 2014-03-05 00:59:27 +00:00
Justin Clark-Casey (justincc) c9415fd763 If an avatar is sitting, send out position updates to clients for any change, not just those outside the usual tolerances.
This is to allow small adjustments of less than 0.05m in functions such as llSetPrimitiveLinkParams() to work
This is another fix for http://opensimulator.org/mantis/view.php?id=7044
Extends regression test for this case.
2014-03-05 00:38:38 +00:00
Justin Clark-Casey (justincc) 31de7b845f When positioning agent with PRIM_ROTATION in llSetLinkPrimitiveParams(), set the global rotation rather than the local rotation
Functionally the same as the patch in http://opensimulator.org/mantis/view.php?id=7044, thanks Aleric.
This commit also extends the regression test
2014-03-03 23:35:21 +00:00
Justin Clark-Casey (justincc) 5038a59ef3 Maybe slightly reduce warp3d memory leakage by disposing of decoded bitmap in Warp3DImageModule.GetTexture()
However, this still appears to be leaking massively, at least for me.  Possible cause is warp3D using GDI objects internally and not disposing of them.
2014-02-28 00:16:06 +00:00
Justin Clark-Casey (justincc) 88b1fc1382 Set up a StreamReader and call ReadToEnd() instead of using the GetStreamString() extension method
This eliminates some stream seeking that was never necessary and makes disposable of the StreamReader consistent with other code
2014-02-27 23:13:26 +00:00
Justin Clark-Casey (justincc) 94ad69faf2 Remove long unused UntrustedWebRequest class
This purports to check web requests but doesn't appear to actually do that.
2014-02-27 22:58:44 +00:00
Justin Clark-Casey (justincc) 5fafea6631 refactor: More consistently use using construct within WebUtil to match other existing code there. 2014-02-27 22:52:43 +00:00
Justin Clark-Casey (justincc) 1f4f09ad69 Add more details to InvalidOperationException logging in SychronousRestFormsRequest.MakeRequest(). 2014-02-27 20:35:56 +00:00
Justin Clark-Casey (justincc) 91333b9267 Stop LSL_Api.GetLinkEntities() from creating an unused list on every parameter except LINK_THIS. Simplify code. 2014-02-27 00:23:24 +00:00
Justin Clark-Casey (justincc) ed760f2586 minor: remove unused variable from recent commit 0e23374 2014-02-27 00:14:16 +00:00
Justin Clark-Casey (justincc) d7c9725ec0 refactor: Make osGetPrimtiveParams() and soSetPrimitiveParams() use common get/set params code in LSL_Api rather than an old copy&pasted section. 2014-02-27 00:11:50 +00:00
Dev Random 6955190c7d Add Util method to load OpSys env vars 2014-02-26 23:39:45 +00:00
Justin Clark-Casey (justincc) ce5d308d23 Add some regression tests for previous commit 0e23374 2014-02-26 23:13:56 +00:00
Justin Clark-Casey (justincc) 0e23374aa2 Implement PRIM_ROTATION, PRIM_ROT_LOCAL, PRIM_POSITION and PRIM_POS_LOCAL when manipulating avatars via llSetLinkPrimitiveParams()
Combination of core parts of Freaky's patch at https://github.com/ft-/opensim-patches/blob/master/opensim-llsetlinkprimitive-agent-fix.patch plus further adjustments from myself.
Resolves Mantises 6121, 6421, 6573, 6657
2014-02-26 23:07:13 +00:00
Justin Clark-Casey (justincc) 26fe59c35e Improve regression test TestSetAppearance() 2014-02-24 19:43:06 +00:00
Justin Clark-Casey (justincc) bc9952f901 Re-enable regression TestSaveBakedTextures() 2014-02-24 19:30:33 +00:00
Justin Clark-Casey (justincc) fd1b2a1c57 Stop mesh avatars that specify the alpha texture in their bake slots from causing the simulator to continually request that they rebake
This is because the alpha texture is not in the cache, we must continue to have the fallback of looking for these and other persisted bakes in the asset service.
Relates to http://opensimulator.org/mantis/view.php?id=6927
2014-02-24 19:20:50 +00:00
Robert Adams 0f03c64a0c Make Scene.DefaultDrawDistance to be the max of the region size and the
user setting. Seems this parameter has many side effects.
2014-02-23 21:56:37 -08:00
Robert Adams 0b213af675 Fix problem of hurricane speed winds. Thanks Vegaslon. 2014-02-22 15:04:28 -08:00
Diva Canto cddf1ec0dc Added 2 new behaviors to pCampBot 2014-02-21 10:06:08 -08:00
Diva Canto 97c74afca8 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2014-02-21 10:05:06 -08:00
Diva Canto d27e188fe2 Added 2 new behavirors to pCampBot. These are part of a systematic study I'm doing for understanding the load that AgentUpdate packets incur on the server. 2014-02-21 10:04:12 -08:00
Justin Clark-Casey (justincc) 11b4f534c2 If texture decode fails in Warp3D map maker, log uuid of asset that failed to decode along with exception 2014-02-20 23:36:50 +00:00
Justin Clark-Casey (justincc) d50d169441 If GetFolderContent called by WebFetchInvDescHandler.Fetch() fails for some reason and returns null, log and return empty contents rather than throwing an exception that ends up terminating the simulator. 2014-02-20 22:35:41 +00:00
Justin Clark-Casey (justincc) 28419251bf minor: Add some method doc to AFM,SetAppearanceAssets() 2014-02-20 19:30:47 +00:00
Justin Clark-Casey (justincc) d1bb73d068 In core.groups GroupsServiceRemoveConnector, if GetGroupRecord() or UpdateGroup() do not have a RESULT parameter in the result message, return null rather than fail with NullReferenceException
This check was already done by other methods.
Looks to resolve http://opensimulator.org/mantis/view.php?id=7012
2014-02-20 19:17:21 +00:00
Justin Clark-Casey (justincc) 4d1426e77d For now, do not replacing missing wearables with default wearables if itme details cannot be found.
This is causing many issues on OSGrid, possibly due to teleporting timing differences with simulators hosted in different places or HG teleports
Added a bit more logging for debug purposes.
See http://opensimulator.org/mantis/view.php?id=6939
2014-02-20 18:40:21 +00:00
dahlia a2866b85f3 add newRegion parameter to CrossAgentToNewRegion event and trigger the event after crossing thread is invoked 2014-02-20 00:18:28 -08:00
dahlia 269a6410a0 add EventManager event OnCrossAgentToNewRegion 2014-02-19 17:52:38 -08:00
Robert Adams c26f01ff8c varregion: make scene default draw distance to be the maximum size of the
region. This is a temp fix for the use of draw distance to compute child
regions. Eventually must use the draw distance from the viewer for the
computation.
2014-02-19 09:51:49 -08:00
Robert Adams fc9930e420 Repair check for if in region position (I mean || is kinda like &&). 2014-02-15 18:49:40 -08:00
Robert Adams 79200ed270 Fix displacement and location operations on legacy trees and grass in
the 'load oar' and 'scene' commands. Before they  were ignored but the
code now relies on the SOG.IsAttachment function for attachmentness.
2014-02-15 17:10:20 -08:00
Robert Adams 7fc289c039 Properly restore position on crossing failure for mega-regions.
Fix odd "cannot cross into banned parcel" viewer error message when crossing
into non-existant region. Proper permission failure messages are now returned.
2014-02-15 17:02:53 -08:00