9ab580d1ea 
								
							
								 
							
						 
						
							
							
								
								Extend default 1 second wait for event completion to other thread script reset (as called by llResetOtherScript()).  
							
							... 
							
							
							
							As with script stop (via llDie()) aborting other scripts event threads, llResetOtherScript() can also abort any current event thread on another script.
On mono 2.6, 2.10 and possibly later this may cause locking problems in certain code areas.
This commit reuses the recently introduced [XEngine] WaitForEventCompletionOnScriptStop to make this a 1 sec timeout, rather than 0 secs. 
							
						 
						
							2012-12-17 22:53:40 +00:00  
				
					
						
							
							
								 
						
							
							
								c77728ebf8 
								
							
								 
							
						 
						
							
							
								
								Add WaitForEventCompletionOnScriptStop [XEngine] config param to OpenSimDefaults.ini to allow change of the wait time for an event to complete on script removal before aborting its thread  
							
							... 
							
							
							
							Default is 1000, as has previously been the case.
This parameter exists for further debug work concerning mono 2.10 crashes that may be related to locks not being removed on Thread.Abort 
							
						 
						
							2012-12-14 00:00:16 +00:00  
				
					
						
							
							
								 
						
							
							
								83487bfbec 
								
							
								 
							
						 
						
							
							
								
								Log situations where workitem event threads are aborted on stop request because they failed to complete event processing within the given timeout.  
							
							... 
							
							
							
							This is for bug hunting purposes where thread aborts may be causing dangling lock issues and subsequent vm crashes on mono (with ReaderWriterLockSlim, etc.) 
							
						 
						
							2012-12-14 00:00:01 +00:00  
				
					
						
							
							
								 
						
							
							
								e6f475735f 
								
							
								 
							
						 
						
							
							
								
								Add "debug script log" command to allow setting a numeric debug level on individual IScriptInstances for debugging purposes.  
							
							... 
							
							
							
							Current, state changes and event fires can be logged for individual scripts.
See command help for more details. 
							
						 
						
							2012-12-13 23:59:53 +00:00  
				
					
						
							
							
								 
						
							
							
								48486b137a 
								
							
								 
							
						 
						
							
							
								
								Add asset id to "show script" and "show scripts" command output to make it easier to extract and inspect the script's asset via "dump asset"  
							
							
							
						 
						
							2012-12-13 23:59:44 +00:00  
				
					
						
							
							
								 
						
							
							
								fdbd448cc7 
								
							
								 
							
						 
						
							
							
								
								In XEngine.DoOnRezScript() use Culture.SetCurrentCulture() instead of constructing a new CultureInfo separately  
							
							
							
						 
						
							2012-12-12 00:22:15 +00:00  
				
					
						
							
							
								 
						
							
							
								d8c88f4894 
								
							
								 
							
						 
						
							
							
								
								Instead of printing script errors out to console, put to debug log so that we also get timestamps.  
							
							... 
							
							
							
							This commit also adds script name, part name, uuid, etc. for later identification.
This information has been sent to console since 2009 but may be turned down if it proves too noisy.
However, I still currently need it to investigate some region problems probably triggered by scripting. 
							
						 
						
							2012-12-06 00:31:15 +00:00  
				
					
						
							
							
								 
						
							
							
								992dc1c2c7 
								
							
								 
							
						 
						
							
							
								
								Add engine-wide events queued and events processed numbers to output of "xengine status" console command.  For debugging purposes.  
							
							
							
						 
						
							2012-12-06 00:30:38 +00:00  
				
					
						
							
							
								 
						
							
							
								ce1d3e9c96 
								
							
								 
							
						 
						
							
							
								
								Remove some mono warnings in script tests, chiefly where SetUp() wasn't properly calling to OpenSimTestCase.SetUp()  
							
							
							
						 
						
							2012-12-06 00:30:30 +00:00  
				
					
						
							
							
								 
						
							
							
								a8a712e1f8 
								
							
								 
							
						 
						
							
							
								
								Add IScriptInstance.EventsQueued to match EventsProcessed instead of asking callers to lock and directly inspect the EventQueue  
							
							
							
						 
						
							2012-12-06 00:30:18 +00:00  
				
					
						
							
							
								 
						
							
							
								5a71cbe530 
								
							
								 
							
						 
						
							
							
								
								For now, sort "show scripts" output in descending order sorted by events processed.  
							
							... 
							
							
							
							For debug purposes - should later add options to allow different sorting or show only highest 10, etc. 
							
						 
						
							2012-12-06 00:30:11 +00:00  
				
					
						
							
							
								 
						
							
							
								c2bdb36c11 
								
							
								 
							
						 
						
							
							
								
								Add IScriptInstance.EventsProcessed stat so that we can record this information and display in "show scripts" for debug purposes  
							
							
							
						 
						
							2012-12-06 00:30:04 +00:00  
				
					
						
							
							
								 
						
							
							
								c3243ce0ce 
								
							
								 
							
						 
						
							
							
								
								Consistenly make NUnit test cases inherit from OpenSimTestCase which automatically turns off any logging enabled between tests  
							
							
							
						 
						
							2012-11-28 03:46:33 +00:00  
				
					
						
							
							
								 
						
							
							
								468d1cf03e 
								
							
								 
							
						 
						
							
							
								
								refactor: move common inventory folder version update code to parent class in mysql, mssql and sqlite database plugins  
							
							
							
						 
						
							2012-11-28 03:20:28 +00:00  
				
					
						
							
							
								 
						
							
							
								db045e69f9 
								
							
								 
							
						 
						
							
							
								
								Also add the additional ScriptException constructor necessary to get [Serializable] to work.  
							
							
							
						 
						
							2012-11-28 02:59:53 +00:00  
				
					
						
							
							
								 
						
							
							
								6a54cb871b 
								
							
								 
							
						 
						
							
							
								
								Mark ScriptException as [Serializable] for when it has to cross AppDomains  
							
							
							
						 
						
							2012-11-28 02:59:47 +00:00  
				
					
						
							
							
								 
						
							
							
								e3927d2868 
								
							
								 
							
						 
						
							
							
								
								Make "show object part" command correctly display script status.  
							
							... 
							
							
							
							Uses new IEntityInventory.TryGetScriptInstanceRunning()
Makes it clearer that TaskInventoryItem.ScriptRunning cannot be used as it is temporary and not updated. 
							
						 
						
							2012-11-28 02:59:30 +00:00  
				
					
						
							
							
								 
						
							
							
								3148a231db 
								
							
								 
							
						 
						
							
							
								
								refactoring llGetPos() to take advantage of implicit converter  
							
							
							
						 
						
							2012-11-28 02:58:22 +00:00  
				
					
						
							
							
								 
						
							
							
								e83a4c24ee 
								
							
								 
							
						 
						
							
							
								
								Formatting and casing correction in WorldCommModule, trailing new line in OSSL to get git diff to not complain  
							
							
							
						 
						
							2012-11-28 02:56:09 +00:00  
				
					
						
							
							
								 
						
							
							
								a1669be6c3 
								
							
								 
							
						 
						
							
							
								
								minor: Add comment as to why we are pulcking plain old ints out of the LSL_List when converting values from LSL for modInvoke()  
							
							
							
						 
						
							2012-11-28 02:55:58 +00:00  
				
					
						
							
							
								 
						
							
							
								e36799f515 
								
							
								 
							
						 
						
							
							
								
								system ints can end up in LSL lists, which can cause counter-intuitive unknown list element type errors in ConvertFromLSL (via modInvoke)  
							
							
							
						 
						
							2012-11-28 02:55:36 +00:00  
				
					
						
							
							
								 
						
							
							
								01a8a65d75 
								
							
								 
							
						 
						
							
							
								
								Get osNpcCreate() and osNpcLoadAppearance() to generate a script error if appearance notecard does not exist, rather than returning UUID.Zero or silently failing.  
							
							
							
						 
						
							2012-11-28 02:54:25 +00:00  
				
					
						
							
							
								 
						
							
							
								28ced402d8 
								
							
								 
							
						 
						
							
							
								
								When scripts generate expected exceptions (e.g. due to checked bad parameter) throw ScriptException instead of just a plain old exception.  
							
							... 
							
							
							
							This is to make it easier to distinguish these exceptions from unexpected OpenSimulator problems internally and in regression tests.
No functional changes. 
							
						 
						
							2012-11-28 02:54:17 +00:00  
				
					
						
							
							
								 
						
							
							
								95e35fe84a 
								
							
								 
							
						 
						
							
							
								
								Make osNpcCreate() return UUID.Zero instead of throwing an exception if notecard name is invalid.  Make osNpcLoadAppearance() fail silently in same circumstance rather than throwing exception.  
							
							
							
						 
						
							2012-11-28 02:54:05 +00:00  
				
					
						
							
							
								 
						
							
							
								3692ff2bdb 
								
							
								 
							
						 
						
							
							
								
								Add TestOsNpcLoadAppearance()  
							
							
							
						 
						
							2012-11-28 02:53:55 +00:00  
				
					
						
							
							
								 
						
							
							
								7235a5fed4 
								
							
								 
							
						 
						
							
							
								
								Move npc creation tests involving appearance from OSSL_ApiAppearanceTest to OSSL_ApiNpcTests  
							
							... 
							
							
							
							This is a more intuitive location. 
							
						 
						
							2012-11-28 02:53:46 +00:00  
				
					
						
							
							
								 
						
							
							
								c86ac36876 
								
							
								 
							
						 
						
							
							
								
								altering documentation for llGetLinkName, as the current documentation is rather lengthy for a "summary".  
							
							
							
						 
						
							2012-11-28 02:50:23 +00:00  
				
					
						
							
							
								 
						
							
							
								4a4d800523 
								
							
								 
							
						 
						
							
							
								
								ensuring that operand order in llGetLinkName is internally consistent  
							
							
							
						 
						
							2012-11-28 02:49:44 +00:00  
				
					
						
							
							
								 
						
							
							
								eefd39a0d5 
								
							
								 
							
						 
						
							
							
								
								Fix llListFindList() returning no match when there is a match with a script constant component in the source list.  
							
							... 
							
							
							
							Adds regression test for this case.
Based on http://opensimulator.org/mantis/view.php?id=6156 
Thanks SignpostMarv. 
							
						 
						
							2012-10-10 23:36:10 +01:00  
				
					
						
							
							
								 
						
							
							
								2226dd1efb 
								
							
								 
							
						 
						
							
							
								
								Revert "refactoring to allow Scene.GetLandData to accept Vector3 as an argument. Note that the prior work on LSL_Vector implicit operators means one does not need to explicitly cast a LSL_Vector to Vector3"  
							
							... 
							
							
							
							This reverts commit f8612b0d1b 
							
						 
						
							2012-09-27 23:29:47 +01:00  
				
					
						
							
							
								 
						
							
							
								f8612b0d1b 
								
							
								 
							
						 
						
							
							
								
								refactoring to allow Scene.GetLandData to accept Vector3 as an argument. Note that the prior work on LSL_Vector implicit operators means one does not need to explicitly cast a LSL_Vector to Vector3  
							
							
							
						 
						
							2012-09-27 23:16:35 +01:00  
				
					
						
							
							
								 
						
							
							
								a2a46a18ae 
								
							
								 
							
						 
						
							
							
								
								4096 is used in various places as the maximum height of a region, refactoring to be a constant  
							
							
							
						 
						
							2012-09-27 23:16:25 +01:00  
				
					
						
							
							
								 
						
							
							
								8f39268761 
								
							
								 
							
						 
						
							
							
								
								fixing bug where last element in list is ignored  
							
							
							
						 
						
							2012-09-27 23:12:24 +01:00  
				
					
						
							
							
								 
						
							
							
								2602d4f16e 
								
							
								 
							
						 
						
							
							
								
								refactoring using List.ConvertAll<string>  
							
							
							
						 
						
							2012-09-27 23:05:50 +01:00  
				
					
						
							
							
								 
						
							
							
								174addc426 
								
							
								 
							
						 
						
							
							
								
								adding a clip method to handle Vector3 objects to enable a minor amount of refactoring  
							
							
							
						 
						
							2012-09-27 23:00:01 +01:00  
				
					
						
							
							
								 
						
							
							
								76eba917f9 
								
							
								 
							
						 
						
							
							
								
								copying documentation from  http://opensimulator.org/wiki/Threat_level  
							
							
							
						 
						
							2012-08-31 16:29:46 +01:00  
				
					
						
							
							
								 
						
							
							
								87850bd6dc 
								
							
								 
							
						 
						
							
							
								
								Log initial script startup info notice when xengine actually starts to do this for debugging purposes, rather than before it actually starts to do this.  
							
							
							
						 
						
							2012-08-31 16:27:54 +01:00  
				
					
						
							
							
								 
						
							
							
								b199a2dea3 
								
							
								 
							
						 
						
							
							
								
								If a script state save fails for some reason on shutdown/region removal, get xengine to spit out some useful information and continue to save other script states  
							
							
							
						 
						
							2012-08-24 21:53:22 +01:00  
				
					
						
							
							
								 
						
							
							
								3b97241716 
								
							
								 
							
						 
						
							
							
								
								Add --force flag to "kick user" console command to allow bypassing of recent race condition checks.  
							
							... 
							
							
							
							This is to allow a second attempt to remove an avatar even if "show connections" shows them as already inactive (i.e. close has already been attempted once).
You should only attempt --force if a normal kick fails.
This is partly for diagnostics as we have seen some connections occasionally remain on lbsa plaza even if they are registered as inactive.
This is not a permanent solution and may not work anyway - the ultimate solution is to stop this problem from happening in the first place. 
							
						 
						
							2012-08-24 21:52:21 +01:00  
				
					
						
							
							
								 
						
							
							
								7dc1c7d841 
								
							
								 
							
						 
						
							
							
								
								minor: Make xengine debug message on script load a scripting loading message instead.  
							
							... 
							
							
							
							This is more useful if compilation fails due to an uncatchable exception since we know what was being compiled. 
							
						 
						
							2012-08-24 21:50:40 +01:00  
				
					
						
							
							
								 
						
							
							
								b714fb0c39 
								
							
								 
							
						 
						
							
							
								
								Implementing PRIM_LINK_TARGET in a non-recursive fashion  
							
							
							
						 
						
							2012-08-24 21:49:44 +01:00  
				
					
						
							
							
								 
						
							
							
								5e98e2b7c7 
								
							
								 
							
						 
						
							
							
								
								adding ATTACH_*_PEC constants  
							
							
							
						 
						
							2012-08-24 21:49:27 +01:00  
				
					
						
							
							
								 
						
							
							
								7ec8e7e025 
								
							
								 
							
						 
						
							
							
								
								Prevent race conditions when one thread removes an NPC SP before another thread has retreived it after checking whether the NPC exists.  
							
							
							
						 
						
							2012-08-24 21:48:48 +01:00  
				
					
						
							
							
								 
						
							
							
								c6efebdd8c 
								
							
								 
							
						 
						
							
							
								
								Release http-in URLs when llResetScript is called  
							
							
							
						 
						
							2012-08-24 21:48:15 +01:00  
				
					
						
							
							
								 
						
							
							
								513b77b78d 
								
							
								 
							
						 
						
							
							
								
								refactor: rename SOG.RezzingObjectID to SOG.FromPartID to match FromFolderID, FromItemID and to reflect that it's a SOP ID rather than a SOG ID.  
							
							
							
						 
						
							2012-08-03 02:26:54 +01:00  
				
					
						
							
							
								 
						
							
							
								cd2c5843a8 
								
							
								 
							
						 
						
							
							
								
								reduced-complexity implementation of function to get rezzing object key  
							
							... 
							
							
							
							Signed-off-by: Melanie <melanie@t-data.com> 
							
						 
						
							2012-08-02 22:12:36 +01:00  
				
					
						
							
							
								 
						
							
							
								794363421d 
								
							
								 
							
						 
						
							
							
								
								Look up the NPC module when the SensorRepeat class is created, rather than on every single sensor sweep.  
							
							
							
						 
						
							2012-08-01 00:39:37 +01:00  
				
					
						
							
							
								 
						
							
							
								7609daca38 
								
							
								 
							
						 
						
							
							
								
								Resolve a deadlock between INPCModule and SensorRepeat by replacing the SensorRepeat list with a new list on add/removes rather than locking it for the duration of the sensor sweep.  
							
							... 
							
							
							
							A deadlock was observed today where NPC removal on a script thread would lock the NPC list and then try to lock the sensor list via scripted attachment removal.
Concurrently, the sensor sweep thread would lock the sensor list and then try to lock the NPC list to check NPC status.
This commit resolves the deadlock by replacing the sensor list on update rather than locking it for the duration of the sweep. 
							
						 
						
							2012-07-31 23:57:57 +01:00  
				
					
						
							
							
								 
						
							
							
								a76a289d11 
								
							
								 
							
						 
						
							
							
								
								Adds support to ScriptModuleComms for region modules to export  
							
							... 
							
							
							
							constants to the script engine. 
							
						 
						
							2012-07-31 10:45:37 -07:00  
				
					
						
							
							
								 
						
							
							
								3f6dfa92ab 
								
							
								 
							
						 
						
							
							
								
								Return world rotation on llGetObjectDetails()'s OBJECT_ROT  
							
							
							
						 
						
							2012-07-29 16:05:35 +01:00