aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine (unfollow)
Commit message (Collapse)AuthorFilesLines
2013-09-27refactor: rename Scene.IncomingCloseAgent() to CloseAgent() in order to make ↵Justin Clark-Casey (justincc)1-1/+1
it clear that all non-clientstack callers should be using this rather than RemoveClient() in order to step through the ScenePresence state machine properly. Adds IScene.CloseAgent() to replace RemoveClient()
2013-09-20Fix bug where using PRIM_LINK_TARGET with only two remaining list items ↵Justin Clark-Casey (justincc)2-2/+16
(e.g. link number then PRIM_ROTATION) would not return the parameter Extended regression test for this case
2013-09-20Make llGetLinkPrimitiveParams() abort and return existing list of params ↵Justin Clark-Casey (justincc)3-239/+397
when it encounters an invalid link number, rather than throwing an exception Addresses http://opensimulator.org/mantis/view.php?id=6768 Thanks to talun for the patch on that commit - in the end I took a different approach that also deals with invalid PRIM_LINK_TARGET However, not yet generating the same warning on invalid PRIM_LINK_TARGET as seen on LL grid This commit also adds regression tests for some cases of llGetLinkPrimitiveParams()
2013-09-206762: llList2Key fails to convert a string in a list to a keyTalun1-1/+1
llGetPrimitiveParams changed to return the sculpty key as an LSL_String so that type checking in llList2Key will work
2013-08-13Remove exception when printing error for failure removing script state.Robert Adams1-1/+1
2013-08-02Fix problem with modInvoke defined integer constants being build intoRobert Adams2-3/+3
scripts as boxed integers rather than proper reference to a new LSLInteger. This fixes an exception when using a registered integer constant in a script.
2013-07-26Fix NPC regression test failures.Justin Clark-Casey (justincc)1-0/+1
These were genuine failures caused by ScenePresence.CompleteMovement() waiting for an UpdateAgent from NPC introduction that would never come. Instead, we do not wait if the agent is an NPC.
2013-07-13In co-op termination, extend EventWaitHandle to give this an indefinite ↵Justin Clark-Casey (justincc)1-2/+21
lifetime in order to avoid a later RemotingException if scripts are being loaded into their own domains. This is necessary because XEngineScriptBase now retains a reference to an EventWaitHandle when co-op termination is active. Aims to address http://opensimulator.org/mantis/view.php?id=6634
2013-07-09If a sensor is in an attachment, avoid throwing an exception if the attachee ↵Justin Clark-Casey (justincc)1-0/+10
is removed from the scene before we try to retrieve them.
2013-07-06Add implementations for llSetVelocity and llSetAngularVelocity.Robert Adams3-0/+38
2013-06-14correct method doc for llRot2Axis()dahlia1-1/+1
2013-06-15minor: remove mono compiler warnings from LSL_Api, properly format method ↵Justin Clark-Casey (justincc)1-7/+5
doc for llRot2Axis()
2013-06-15Mantis 6280: llSetContentType(). An implementation.Talun4-0/+84
An implimentation of llSetContentType including all of the new constants added since the mantis was raised.
2013-06-15Mantis 6108: ossetprimitiveparams temporary/phantom problemTalun1-2/+2
Corrected to ensure that the target prim is updated by osSetPrimitiveParams when setting PRIM_TEMP_ON_REZ and/or PRIM_PHANTOM instead of the prim that the script is in.
2013-06-11Adjust output of llRot2Axis and llRot2Angle to match domains SL(tm) uses. ↵dahlia1-0/+3
Addresses Mantis #0006671
2013-06-10LSL_Rotation.Normalize() now returns 0,0,0,1 for x,y,z,s when normalization ↵dahlia1-2/+2
fails
2013-06-10llRot2Angle now checks absolute value of s rotation component before normalizingdahlia1-11/+3
2013-06-10llRot2Axis now checks absolute value of s rotation component before ↵dahlia1-22/+6
normalizing. Also removed some excessive division and cleaned up a bit
2013-06-10Check For NaN and Infinity in llRot2Axis/Angle Fixes mantis #6669teravus1-2/+4
2013-06-10add a Normalize() method for LSL_Rotationdahlia1-0/+25
2013-06-10Mantis 5346: llAxisAngle2Rot() should normalize before computingTalun1-0/+1
Corrected to agree with http://wiki.secondlife.com/wiki/Llaxisangle2rot#Deep_Notes to normalise the vector before computing the quaternion Signed-off-by: dahlia <dahlia@nomail>
2013-06-06Hook up Keyframe motion to almost everything. Failing to cross a sim borderMelanie4-0/+159
may yield unexpected results in some cases. No database persistence yet,
2013-05-31Remove unnecessary m_scenes and m_scene from AsyncCommandManager.Justin Clark-Casey (justincc)1-6/+1
These were private and the sole point of use (to know when to load config for the first time) can be done by looking at script engines instead.
2013-05-31Lock areas of AsyncCommandManager where multiple threads could try to ↵Justin Clark-Casey (justincc)1-111/+177
access/update the same static structures simultaneously. This is possible where there is more than one scene (multiple copies of the same script engine) and/or more than one script engine being used. These operations are not thread safe and could be leading to the exceptions/problems seen in http://opensimulator.org/mantis/view.php?id=6651 This also prevents a small race condition where more than one AsyncLSLCmdHandlerThread could be started.
2013-05-31refactor: Remove unused AsyncCommandManager.PleaseShutdownJustin Clark-Casey (justincc)1-19/+1
2013-05-30If an exception occurs in the AsyncCommandManager loop, spit it out to log ↵Justin Clark-Casey (justincc)1-8/+6
rather than silently swallowing it. This might help diagnose the cause of http://opensimulator.org/mantis/view.php?id=6651 where sometimes scripts fail to start on region start.
2013-05-22Implement llSetSoundQueueing().Justin Clark-Casey (justincc)1-4/+8
This is controlled by the viewer, not the server. So as per http://wiki.secondlife.com/wiki/LlSetSoundQueueing, only two sounds can be queued per prim. You probably need to use llPreloadSound() for best results
2013-05-15Fix issue where osMakeNotecard() would fail if given a list containing ↵Justin Clark-Casey (justincc)1-30/+30
vectors or quaternions. http://opensimulator.org/mantis/view.php?id=6640
2013-05-01Add in-code exaplanation for the change in cancellation signalling in STP ↵Justin Clark-Casey (justincc)1-2/+0
2.2.3. Remove left in Console.WriteLine accidentally inserted in recent 206fb306
2013-05-01Update SmartThreadPool to latest version 2.2.3 with a major and minor change.Justin Clark-Casey (justincc)4-9/+12
SmartThreadPool code comes from http://www.codeproject.com/Articles/7933/Smart-Thread-Pool This version implements thread abort (via WorkItem.Cancel(true)), threadpool naming, max thread stack, etc. so we no longer need to manually patch those. However, two changes have been made to stock 2.2.3. Major change: WorkItem.Cancel(bool abortExecution) in our version does not succeed if the work item was in progress and thread abort was not specified. This is to match previous behaviour where we handle co-operative termination via another mechanism rather than checking WorkItem.IsCanceled. Minor change: Did not add STP's StopWatch implementation as this is only used WinCE and Silverlight and causes a build clash with System.Diagnostics.StopWatch The reason for updating is to see if this improves http://opensimulator.org/mantis/view.php?id=6557 and http://opensimulator.org/mantis/view.php?id=6586
2013-04-09minor: Log an exception if we aren't able to delete a script state file ↵Justin Clark-Casey (justincc)1-1/+6
rather than simply ignoring it. This should never normally happen but if it does then it can be valuable diagonstic information.
2013-04-04Fix bug where outstanding llHTTPRequests for scripts were not being aborted ↵Justin Clark-Casey (justincc)1-1/+7
when they were deleted. This was because AsyncCommandManager was handing an item ID to IHttpRequestModule.StopHttpRequest() rather than the expected request ID. This commit also makes the http request asynchronous using BeginGetResponse() rather than doing this by launching a new thread so that we can more safely abort it via HttpWebRequest.Abort() rather than aborting the thread itself. This also renames StopHttpRequest() to StopHttpRequestsForScript() since any outstanding requests are now aborted and/or removed.
2013-04-02Use Output instead of OutputFormat in appropriate places of XEngine status ↵Justin Clark-Casey (justincc)1-2/+2
reporting.
2013-03-29Added missing functionality (mainly custom headers) to llHTTPRequest.Kevin Cozens2-56/+128
2013-03-26Make llGetLinkPrimitiveParams() and llGetPrimitiveParams() work for avatars ↵Justin Clark-Casey (justincc)1-30/+194
in a linkset. llGetPrimitiveParams() works through PRIM_LINK_TARGET Setting via llSetLinkPrimitiveParams(), etc. not yet implemented
2013-03-26Phase 1 of implementing a transfer permission. Overwrite libOMV's PermissionMaskMelanie2-2/+4
with our own and add export permissions as well as a new definition for "All" as meaning "all conventional permissions" rather than "all possible permissions"
2013-03-18Multiattach, part 1Melanie1-2/+2
Conflicts: OpenSim/Framework/AvatarAppearance.cs OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs OpenSim/Region/Framework/Scenes/Scene.cs OpenSim/Region/OptionalModules/Avatar/Attachments/TempAttachmentsModule.cs OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2013-03-15Make the LSL memory functions virtual so script engines can override them if ↵Melanie1-3/+3
they have different memory management.
2013-03-15refactor: make llGetLinkName() and llGetLinkKey() use a common ↵Justin Clark-Casey (justincc)1-84/+80
GetLinkEntity() method
2013-03-14minor: remove mono compiler warnings in LSL_Api.csJustin Clark-Casey (justincc)1-3/+3
2013-03-14refactor: minor cleanup in osGetAvatarList()Justin Clark-Casey (justincc)1-2/+1
2013-03-14Fix bug in osCauseHealing() if called with an avatar ID for an avatar that ↵Justin Clark-Casey (justincc)1-13/+9
is not in the scene.
2013-03-14minor: Use more compact libomv primitive constructors in osNpcGetPos() and ↵Justin Clark-Casey (justincc)1-6/+3
osNpcGetRot()
2013-03-14Fix minor race conditions in OSSL_Api functions where a parcel could be ↵Justin Clark-Casey (justincc)1-6/+4
misidentified for moving prims.
2013-03-14refactor: Use LSL_Vector(Vector3) constructor in llCastRay()Justin Clark-Casey (justincc)1-1/+1
2013-03-14refactor: Use ILandChannel.GetLandObject(Vector3) in LSL_Api rather than ↵Justin Clark-Casey (justincc)1-41/+21
having to continually take intermediate Vector3s to avoid race conditions
2013-03-14Fix minor race condition in llGetCameraRot() where inconsistent information ↵Justin Clark-Casey (justincc)1-4/+4
could be returned for a rotating camera
2013-03-14Fix minor race condition in llGetCameraPos() where an inconsistent post ↵Justin Clark-Casey (justincc)1-4/+5
could be returned for a moving camera
2013-03-14Fix minor race condition in llParcelMediaCommandList() where a parcel could ↵Justin Clark-Casey (justincc)1-1/+3
be misidentified for a moving prim
2013-03-14Fix minor race conditions in LSL_Api.GetPrimParams() for PRIM_POSITION, ↵Justin Clark-Casey (justincc)1-10/+11
PRIM_SIZE and PRIM_ROT_LOCAL This function is used by all the various ll*Params() and os*Params() functions