Commit Graph

14628 Commits (f6d79c7cbbde06f9d8efde8ced8b1eda19f10b9a)

Author SHA1 Message Date
Diva Canto f6d79c7cbb Mantis #7713: fixed bug introduced by 1st MOSES patch. 2015-08-30 11:07:27 -07:00
Robert Adams 9a490ad2b9 Revert "BulletSim: delay adding a scene presence to the list of presences"
Remove these changes until the region crossing problems can be figured out.

This reverts commit 062ec0efbd.
2015-08-24 06:39:06 -07:00
Robert Adams 062ec0efbd BulletSim: delay adding a scene presence to the list of presences
until it is fully configured. Another addition to fixing the
collisions stopping problem.
2015-08-23 21:15:04 -07:00
Robert Adams 11209c72f5 In ScenePresence, when removing from the physical scene, unsubscribe
from collisions before removing the collision callbacks.
Should not make operational differences.
2015-08-23 21:13:40 -07:00
lillith xue 722d00903b Add Culture.FormatProvider to String.Format, like it is done for LSLFloat
Signed-off-by: Melanie Thielker <melanie@t-data.com>
2015-08-24 01:21:33 +02:00
Melanie Thielker 87247dc2c9 Just replace all m_data accesses with accesses to Data, which is
protected against nullrefs
2015-08-24 00:08:08 +02:00
Melanie Thielker a9beee7050 Revert "Revert "Fix a possible nullref caused by accessing m_data rather than Data""
Needed after all

This reverts commit 26094c21fe.
2015-08-23 17:48:48 +02:00
Melanie Thielker c4ea4ea000 Fix the nullref in scripts - the right way 2015-08-23 17:36:08 +02:00
Melanie Thielker 26094c21fe Revert "Fix a possible nullref caused by accessing m_data rather than Data"
My bad!

This reverts commit 20326e1947.
2015-08-23 17:34:20 +02:00
Jeff Kelley e1a455eae5 Fix multiple moving_end and add moving_start to llSetKeyframedMotion
Signed-off-by: Melanie Thielker <melanie@t-data.com>
2015-08-20 00:24:14 +02:00
Melanie Thielker 028506cf3c Partial plumbing for the agent stateful module features negotiation 2015-08-20 00:18:45 +02:00
Melanie Thielker 35cbe76f27 Merge branch 'master' of opensimulator.org:/var/git/opensim 2015-08-19 23:34:13 +02:00
Melanie Thielker 20326e1947 Fix a possible nullref caused by accessing m_data rather than Data 2015-08-19 23:33:38 +02:00
Melanie 7633ebf36f Add explicit initialization because mono 3 doesn't like what mono 2 allows 2015-08-19 23:18:40 +02:00
Melanie Thielker 662b59af83 Convert the lsl list type into a struct. EXPERIMENTAL! This may affect
the llSetPrimitiveParams family of functions adversely. Please test!
2015-08-19 23:14:11 +02:00
Melanie Thielker 25335b0707 Some unit tests are simply broken and create an API with a null m_item.
This isn't supposed to be done and should be changed in the tests.
For now, add a protective check.
2015-08-19 01:19:25 +02:00
Melanie Thielker 62f3399559 Try to address Mantis #7689. When adding a scalar to a list, make a copy
as is done when adding another list.
2015-08-19 01:00:42 +02:00
Melanie Thielker c53f732163 Change the IScriptApi back to it's original form, removing XEngine
specific additions that should not have been there in the first place.
Sleeping and time measurement are now completely internal to XEngine
2015-08-17 21:46:30 +02:00
Melanie Thielker ee7debcca6 Revert "When scripts are sleeping, don't count that as execution time"
The approach is good but the way it is written breaks the architecture.
Rewrite follows.

This reverts commit a568f06b7f.
2015-08-17 18:11:45 +02:00
Melanie Thielker 1de5612d8b Merge branch 'master' of opensimulator.org:/var/git/opensim 2015-08-17 18:08:32 +02:00
Melanie Thielker 664ecb1938 Prevent the spammy "many event" message from appearing in normal use.
Console command debug xengine now turns that on.
Also, per orenh, remove the triggers at 1000 and 10000 as they are not
useful now that top scripts works.
2015-08-17 18:05:39 +02:00
Diva Canto 0cdd1165c8 Minor improvement of previous patch. 2015-08-16 21:23:41 -07:00
Cinder fc6fe75268 MANTIS-7684 - Use the user management module to get username for script dialogs
Signed-off-by: Diva Canto <diva@metaverseink.com>
2015-08-16 21:13:42 -07:00
Melanie Thielker c83da03183 Create want and need lists for agent data interchange formats. 2015-08-16 01:45:15 +02:00
Diva Canto 0f8a7982dc Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2015-08-15 16:08:42 -07:00
Diva Canto 4cbbbefbf6 Removed ignoreCase=true from the call to Type.GetInterface, because, well, we don't want to ignore case. And this seems to be causing problems in mono 4.3. 2015-08-15 16:08:14 -07:00
Melanie Thielker 2374c4a4c1 Adding the IAgentStatefulModule interface. It is used in addtion to
one of the existing module interfaces to denote a module that holds
agent specific state that should be transferred to other regions
2015-08-15 19:08:45 +02:00
Drake Arconis 4f3198da22 Only send the requested ObjectPropertiesFamily in the RequestObjectPropertiesFamily reply and not the actual ObjectProperties packet
Signed-off-by: Melanie Thielker <melanie@t-data.com>
2015-08-15 01:57:25 +02:00
Drake Arconis a5967d918a Send a proper ownerid for Object messages to conform with what viewer expects
Signed-off-by: Melanie Thielker <melanie@t-data.com>
2015-08-15 01:18:20 +02:00
Melanie Thielker e9067c133c Remove DOS line endings from LSL_API.cs 2015-08-13 01:34:18 +02:00
Diva Canto a22e6cb7f5 Whitespace borkness? 2015-08-12 09:13:45 -07:00
Drake Arconis f25c67ea1d Send correct uuids in the FromID and ID packet fields for llInstantMessage
Signed-off-by: Diva Canto <diva@metaverseink.com>
2015-08-12 09:08:01 -07:00
Oren Hurvitz 59da146e9d When the user stops a script, have it remain stopped
Previously the script state was never saved for a !Running script, so upon region restart the script would be Running again.

The use of the 'StayStopped' flag is needed because all scripts are automatically stopped when the region shuts down, but in that case we shouldn't save in their state that they're !Running.
2015-08-11 08:44:27 +01:00
Oren Hurvitz a568f06b7f When scripts are sleeping, don't count that as execution time
Sleeping doesn't use the CPU.
2015-08-11 08:44:27 +01:00
Oren Hurvitz d24528b3bc Show Script Time in the statistics panel
The value shown is the number of milliseconds per frame that were spent executing scripts in this region.
2015-08-11 08:44:26 +01:00
Oren Hurvitz 5679cd0100 Changed "Script Execution Time" to be the gross time, i.e. including handling it in XEngine
Previously the "Net Time" was reported: only the time actually spent in the script's code. This is not a correct indication of how much load the script places on the simulator, because scripts that change state often or have many events use up a lot of time just in the event handlers, and previously this time wasn't counted.
2015-08-11 08:42:31 +01:00
Oren Hurvitz a3bed1fbcb Report "Script Execution Time" as the time spent executing the script in the last 30 seconds. Use a sliding window to calculate this.
Notes:
- This metric provides a better indication of which scripts are taking up a lot of CPU (and therefore should be optimized).
- Previously the execution time was reset to 0 in every new measurement period, causing the reported time to fluctuate for no reason. This has been fixed by using a sliding window.
2015-08-11 08:42:26 +01:00
Oren Hurvitz 287096d826 Improved calculation of Script Execution TimeStarted
1. Use a Stopwatch (a high-resolution timer)
2. Whenever we start a new measurement period, zero out the total execution time (previously it just kept accumulating)
3. Changed the measurement period from 30 minutes to 30 seconds. This is much more useful in the "Top Scripts" dialog, as it shows currently active scripts
2015-08-11 07:35:41 +01:00
Oren Hurvitz 20af31f18e Fixed mistakes related to confusion between Environment.TickCount (milliseconds) and TimeSpan.TicksPerXXX (10000 x milliseconds) 2015-08-11 07:35:40 +01:00
Oren Hurvitz 4c6fb9fb64 Log scripts that have processed many events: this is probably an indication of a problem 2015-08-11 07:35:39 +01:00
Oren Hurvitz 7457173fe4 Fixed calling "debug xengine log" without the 'level' parameter: this should show the current log level; not crash 2015-08-11 07:35:38 +01:00
Oren Hurvitz 4ad1468165 Better handling of invalid XML: a) prevent infinite loop on EOF; b) better logging
If the XML was truncated for some reason then ExecuteReadProcessors() would get into an infinite loop, using high CPU. Now it detects EOF (and several other error cases) and aborts.

The rest of the changes just improve logging of XML in case of errors, so that we can see what the bad XML is.
2015-08-11 07:35:37 +01:00
Oren Hurvitz 373455a6fa Fixed mistakes in string format specifiers (e.g., "{0)" instead of {0}") 2015-08-11 06:16:23 +01:00
Robert Adams fe37cb9990 BulletSim: rearrange code and add different locking to eliminate chances
of race conditions and, especially, race conditions when an object is
removed and quickly re-added to a scene.

This hopefully reduces the occurance of problems when avatars TP within
a region -- the main problem being the loss of collisions.
2015-08-09 15:36:50 -07:00
Robert Adams fe86df0ec9 BulletSim: update the motion actors so they completely clean themselves
when Dispose() is called. This reduces chance of object leakage when
    destroying objects.
Rearrange initialization and shut down of BSActorLockAxis so it is
    consistant with other actors.
2015-08-09 15:34:06 -07:00
Diva Canto 959872315f WARNING: massive refactor to follow libomv's latest changes regarding inventory folders. The newest version of libomv itself is committed here. Basically, everything that was using the AssetType enum has been combed through; many of those uses were changed to the new FolderType enum.
This means that from now on, [new] root folders have code 8 (FolderType.Root), as the viewers expect, as opposed to 9, which was what we had been doing. Normal folders are as they were, -1. Also now sending folder code 100 for Suitcase folders to viewers, with no filter.
All tests pass, but fingers crossed!
2015-08-08 12:12:50 -07:00
Oren Hurvitz 2153a01cc7 Have osAvatarName2Key check the cache first, even for foreign users
Another change: removed the second call to userManager.AddUser(). UserManagementModule won't modify an existing record.
2015-08-07 11:34:52 +03:00
Robert Adams 5a1279af8a BulletSim: clean up some code for axis locking. No functional change. 2015-08-06 21:48:50 -07:00
Robert Adams f0417c5d50 BulletSim: rearrange code and add some tests to try and resolve the
initialization race conditions reported in Mantis 6792.

When a region is initializing it seems that the prim initialization code
can be interrupted part way through then taints are processed for
prims that are not completely there.
2015-08-06 19:57:32 -07:00
Christopher 86c426e587 create osGetAvatarHomeURI
Signed-off-by: Melanie Thielker <melanie@t-data.com>
2015-08-04 18:09:13 +02:00