Justin Clark-Casey (justincc)
6f5fd067a5
Fix bug where using PRIM_LINK_TARGET with only two remaining list items (e.g. link number then PRIM_ROTATION) would not return the parameter
...
Extended regression test for this case
2013-09-20 21:39:10 +01:00
Justin Clark-Casey (justincc)
9fcf1de0fa
Make llGetLinkPrimitiveParams() abort and return existing list of params 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-20 21:39:07 +01:00
Talun
726b7dce61
6762: llList2Key fails to convert a string in a list to a key
...
llGetPrimitiveParams changed to return the sculpty key as an LSL_String so
that type checking in llList2Key will work
2013-09-20 21:38:49 +01:00
Robert Adams
a90351cd2c
Remove exception when printing error for failure removing script state.
2013-08-13 11:49:09 -07:00
Robert Adams
87ee0c395e
Fix problem with modInvoke defined integer constants being build into
...
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-08-02 09:44:01 -07:00
Justin Clark-Casey (justincc)
a08f01fa83
Fix NPC regression test failures.
...
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-26 18:43:15 +01:00
Justin Clark-Casey (justincc)
3d118fb580
In co-op termination, extend EventWaitHandle to give this an indefinite 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-13 00:02:54 +01:00
Justin Clark-Casey (justincc)
cec8e6d0f7
If a sensor is in an attachment, avoid throwing an exception if the attachee is removed from the scene before we try to retrieve them.
2013-07-09 23:52:47 +01:00
Robert Adams
d838f15d97
Add implementations for llSetVelocity and llSetAngularVelocity.
2013-07-06 09:53:30 -07:00
dahlia
694c4bcbb6
correct method doc for llRot2Axis()
2013-06-14 20:00:20 -07:00
Justin Clark-Casey (justincc)
da3724a904
minor: remove mono compiler warnings from LSL_Api, properly format method doc for llRot2Axis()
2013-06-15 00:11:36 +01:00
Talun
f074739e33
Mantis 6280: llSetContentType(). An implementation.
...
An implimentation of llSetContentType including all of the new
constants added since the mantis was raised.
2013-06-15 00:06:03 +01:00
Talun
fc89bde044
Mantis 6108: ossetprimitiveparams temporary/phantom problem
...
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-15 00:00:00 +01:00
dahlia
ed950e6c74
Adjust output of llRot2Axis and llRot2Angle to match domains SL(tm) uses. Addresses Mantis #0006671
2013-06-11 00:29:40 -07:00
dahlia
ba84074468
LSL_Rotation.Normalize() now returns 0,0,0,1 for x,y,z,s when normalization fails
2013-06-10 17:54:14 -07:00
dahlia
9d9b9d4938
llRot2Angle now checks absolute value of s rotation component before normalizing
2013-06-10 17:11:49 -07:00
dahlia
b242ead6df
llRot2Axis now checks absolute value of s rotation component before normalizing. Also removed some excessive division and cleaned up a bit
2013-06-10 17:10:04 -07:00
teravus
1c7fbb86c2
Check For NaN and Infinity in llRot2Axis/Angle Fixes mantis #6669
2013-06-10 18:47:08 -05:00
dahlia
a949556c4e
add a Normalize() method for LSL_Rotation
2013-06-10 16:42:49 -07:00
Talun
7de0912a97
Mantis 5346: llAxisAngle2Rot() should normalize before computing
...
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-10 04:13:34 -07:00
Melanie
81ad9255b5
Hook up Keyframe motion to almost everything. Failing to cross a sim border
...
may yield unexpected results in some cases. No database persistence yet,
2013-06-06 03:03:05 +01:00
Justin Clark-Casey (justincc)
217c7d1140
Remove unnecessary m_scenes and m_scene from AsyncCommandManager.
...
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-31 23:00:10 +01:00
Justin Clark-Casey (justincc)
921ad8704e
Lock areas of AsyncCommandManager where multiple threads could try to 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-31 22:50:15 +01:00
Justin Clark-Casey (justincc)
00c1586ff8
refactor: Remove unused AsyncCommandManager.PleaseShutdown
2013-05-31 18:12:36 +01:00
Justin Clark-Casey (justincc)
46335b103e
If an exception occurs in the AsyncCommandManager loop, spit it out to log 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-30 23:51:35 +01:00
Justin Clark-Casey (justincc)
7d38f4940c
Implement llSetSoundQueueing().
...
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-22 20:01:57 +01:00
Justin Clark-Casey (justincc)
177a53fbcf
Fix issue where osMakeNotecard() would fail if given a list containing vectors or quaternions.
...
http://opensimulator.org/mantis/view.php?id=6640
2013-05-15 22:04:38 +01:00
Justin Clark-Casey (justincc)
81a90e30c6
Add in-code exaplanation for the change in cancellation signalling in STP 2.2.3. Remove left in Console.WriteLine accidentally inserted in recent 206fb306
2013-05-01 19:29:46 +01:00
Justin Clark-Casey (justincc)
206fb306a7
Update SmartThreadPool to latest version 2.2.3 with a major and minor change.
...
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-05-01 19:01:43 +01:00
Justin Clark-Casey (justincc)
8690a08881
minor: Log an exception if we aren't able to delete a script state file rather than simply ignoring it.
...
This should never normally happen but if it does then it can be valuable diagonstic information.
2013-04-09 23:02:11 +01:00
Justin Clark-Casey (justincc)
831e4c3850
Fix bug where outstanding llHTTPRequests for scripts were not being aborted 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-04 00:36:15 +01:00
Justin Clark-Casey (justincc)
2bfe60e2fb
Use Output instead of OutputFormat in appropriate places of XEngine status reporting.
2013-04-02 01:28:16 +01:00
Kevin Cozens
cbc9ae898c
Added missing functionality (mainly custom headers) to llHTTPRequest.
2013-03-29 23:32:11 +00:00
Justin Clark-Casey (justincc)
13170ca627
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2013-03-26 20:32:22 +00:00
Justin Clark-Casey (justincc)
3f0f313a76
Make llGetLinkPrimitiveParams() and llGetPrimitiveParams() work for avatars in a linkset.
...
llGetPrimitiveParams() works through PRIM_LINK_TARGET
Setting via llSetLinkPrimitiveParams(), etc. not yet implemented
2013-03-26 20:25:58 +00:00
Melanie
5f4c4df227
Phase 1 of implementing a transfer permission. Overwrite libOMV's PermissionMask
...
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-26 03:40:06 +00:00
Melanie
5e1f651e21
Merge branch 'master' into newmultiattach
...
Conflicts:
OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
2013-03-18 23:31:27 +00:00
Melanie
fcecfc81bb
Multiattach, part 1
...
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-18 22:56:03 +00:00
Melanie
7e5d553781
Make the LSL memory functions virtual so script engines can override them if they have different memory management.
2013-03-15 23:46:49 +00:00
Justin Clark-Casey (justincc)
e25ba116a3
refactor: make llGetLinkName() and llGetLinkKey() use a common GetLinkEntity() method
2013-03-15 00:06:42 +00:00
Justin Clark-Casey (justincc)
081271e1d7
minor: remove mono compiler warnings in LSL_Api.cs
2013-03-14 23:44:16 +00:00
Justin Clark-Casey (justincc)
2fbc08d7dd
refactor: minor cleanup in osGetAvatarList()
2013-03-14 23:19:18 +00:00
Justin Clark-Casey (justincc)
0ea0f8aa83
Fix bug in osCauseHealing() if called with an avatar ID for an avatar that is not in the scene.
2013-03-14 23:16:39 +00:00
Justin Clark-Casey (justincc)
56b333f301
minor: Use more compact libomv primitive constructors in osNpcGetPos() and osNpcGetRot()
2013-03-14 23:12:58 +00:00
Justin Clark-Casey (justincc)
55204ccde6
Fix minor race conditions in OSSL_Api functions where a parcel could be misidentified for moving prims.
2013-03-14 23:09:59 +00:00
Justin Clark-Casey (justincc)
f8dab4f93f
refactor: Use LSL_Vector(Vector3) constructor in llCastRay()
2013-03-14 23:06:54 +00:00
Justin Clark-Casey (justincc)
ca99f418d8
refactor: Use ILandChannel.GetLandObject(Vector3) in LSL_Api rather than having to continually take intermediate Vector3s to avoid race conditions
2013-03-14 23:05:21 +00:00
Justin Clark-Casey (justincc)
c09f4ff483
Fix minor race condition in llGetCameraRot() where inconsistent information could be returned for a rotating camera
2013-03-14 22:49:08 +00:00
Justin Clark-Casey (justincc)
114fd042de
Fix minor race condition in llGetCameraPos() where an inconsistent post could be returned for a moving camera
2013-03-14 22:46:27 +00:00
Justin Clark-Casey (justincc)
d4b109b4c4
Fix minor race condition in llParcelMediaCommandList() where a parcel could be misidentified for a moving prim
2013-03-14 22:45:00 +00:00