aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Implements a very useful OSSL function to test a string to seeMic Bowman2012-07-203-0/+26
| | | | | | if it is a UUID. The function is osIsUUID(). Thanks SignpostMarv!
* Stop the 15 second initial script compile wait if a script is being rezzed ↵Justin Clark-Casey (justincc)2012-07-181-0/+4
| | | | on a previously empty region.
* Merge branch 'master' of ssh://opensimulator.org/var/git/opensimJustin Clark-Casey (justincc)2012-07-172-6/+24
|\
| * Merge branch 'master' of ssh://opensimulator.org/var/git/opensimJustin Clark-Casey (justincc)2012-07-172-6/+24
| |\
| | * Make the scrpt running flag work properlyMelanie2012-07-172-6/+24
| | |
* | | Revert "Revert "refactor: make llGiveInventory() use existing ↵Justin Clark-Casey (justincc)2012-07-171-24/+9
|/ / | | | | | | | | | | | | | | | | | | | | GetInventoryItem() method rather than iterate through TaskInventory itself."" This reverts commit 59a29f5f221a1ffe4e22c63ef9da82270442b213. The original revert was committed by mistake - it turns out this was not the cause of Mantis 6089 Conflicts: OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
* | Fix regression where llGiveInventory() had stopped asking non-owner ↵Justin Clark-Casey (justincc)2012-07-171-29/+29
| | | | | | | | | | | | | | | | | | receivers to accept/decline. This appears to be a regression from back in commit db91044 (Mon Aug 22 2011) where we started to send TaskInventoryOffered msg dialog rather than InventoryOffered dialog. This is probably correct, but failed because the bucket was too large and because we wouldn't have handled the TaskInventoryDeclined option anyway. This patch handles both of these and make llGiveInventoryList() use TaskInventoryOffered as well Fixes http://opensimulator.org/mantis/view.php?id=6089
* | Revert "refactor: make llGiveInventory() use existing GetInventoryItem() ↵Justin Clark-Casey (justincc)2012-07-171-11/+24
|/ | | | | | method rather than iterate through TaskInventory itself." This reverts commit 58b13d51a7eddb442e38e6dc6790a9e7cf68bad7.
* Revert "Fix script "Running" behavior"Melanie2012-07-164-37/+0
| | | | | | A better solution using the already present flags must be found. This reverts commit 6d3ee8bb39d47ed7b32e8905fa0b2fc31c5a9f80.
* sending more user-friendly messages to the script error window rather than ↵SignpostMarv2012-07-161-1/+14
| | | | | | the thrown exceptions. Signed-off-by: Melanie <melanie@t-data.com>
* acting on feedback from justinccSignpostMarv2012-07-141-6/+7
|
* acting on feedback from justinccSignpostMarv2012-07-141-39/+42
|
* added in some extra variables, it sometimes thinks it is on the same parcel :(SignpostMarv2012-07-141-5/+7
| | | | Signed-off-by: SignpostMarv <github@signpostmarv.name>
* adding workaround for silent failure if position is outside the bounds of a ↵SignpostMarv2012-07-141-13/+41
| | | | | | region, implementing parcel prim count check. Signed-off-by: SignpostMarv <github@signpostmarv.name>
* Implementation of llSetRegionPos(). Does not implement failure on object ↵SignpostMarv2012-07-143-4/+45
| | | | | | entry/prim limit/access restrictions. Signed-off-by: SignpostMarv <github@signpostmarv.name>
* Rather than instantiating a UTF8 encoding everywhere when we want to supress ↵Justin Clark-Casey (justincc)2012-07-131-1/+1
| | | | | | the BOM, use a single Util.UTF8NoBomEncoding. This class is thread-safe (as evidenced by the provision of the system-wide Encoding.UTF8 which does not suppress BOM on output).
* Remove IClientAPI.GetClientEP() in favour of existing identical ↵Justin Clark-Casey (justincc)2012-07-121-6/+2
| | | | IClientAPI.RemoteEndpoint.
* Where possible, use the system Encoding.ASCII and Encoding.UTF8 rather than ↵Justin Clark-Casey (justincc)2012-07-115-25/+15
| | | | | | | constructing fresh copies. The encodings are thread-safe and already used in such a manner in other places. This isn't done where Byte Order Mark output is suppressed, since Encoding.UTF8 is constructed to output the BOM.
* Allow XEngine StartDelay to be configured in the [XEngine] config section.Justin Clark-Casey (justincc)2012-07-112-2/+10
| | | | | This is only currently meant for use by regression tests that don't have any issues if XEngine is started up quickly, since no other operations will be occuring simultaneously. Therefore, this is not yet documented externally.
* Remove WorldComm module from the regression TestCompileAndStartScript() ↵Justin Clark-Casey (justincc)2012-07-111-4/+1
| | | | since the infrastructure no longer fails if this module isn't present, at least on the tested codepaths
* Add regression TestDetachScriptedAttachmentToInventory()Justin Clark-Casey (justincc)2012-07-113-10/+17
| | | | This currently only does a relatively crude check for a ScriptState node in the serialized xml
* Disable logging in regression test in OSSL_ApiAttachmentTestsJustin Clark-Casey (justincc)2012-07-101-1/+1
|
* If a script is being stopped manually, then give the scriptpool thread 1 ↵Justin Clark-Casey (justincc)2012-07-101-1/+5
| | | | | | | second to finish normally before forcibly aborting. This is to avoid the worst of the problems in mono 2.6, 2.10 where an aborted thread does not always release all its locks. This very short grace period is identical to the existing behaviour when a script is removed from the scene.
* This script allows an object to be attached directly from prim inventory to ↵Justin Clark-Casey (justincc)2012-07-094-5/+96
| | | | | | | another avatar in the scene. Very useful in serious game/environment scenarios where its only allowed for trusted creators. Threat level Severe
* minor: remove some recent mono compiler warningsJustin Clark-Casey (justincc)2012-07-071-1/+1
|
* Remove redundant SetScene() function in Scene.AddSceneObject()Justin Clark-Casey (justincc)2012-07-072-10/+10
| | | | | This is always done later on in SceneGraph.AddSceneObject() if the call hasn't failed due to sanity checks. There's no other purpose for this method to exist and it's dangerous/pointless to call in other conditions.
* Mantis 6063 osNpcTouch.Talun2012-07-063-0/+41
| | | | Allow NPCS to touch obects.
* regrade osFormatString, osMatchString and osReplaceString to VeryLow.Justin Clark-Casey (justincc)2012-07-051-3/+3
| | | | I can't see that these present any real hazard to sim functioning.
* Add OSSL function osForceAttachToAvatarFromInventory()Justin Clark-Casey (justincc)2012-07-057-6/+253
| | | | | | | This works like osForceAttachToAvatar() but allows an object to be directly specified from the script object's inventory rather than forcing it to be rezzed in the scene first. Still only attaches objects to the owner of the script. This allows one to bypass the complicated co-ordination of first rezzing objects in the scene before attaching them. Threat level high.
* Use GetInventoryItem() in llRezAtRoot rather than iterating through a cloned ↵Justin Clark-Casey (justincc)2012-07-041-40/+36
| | | | dictionary
* refactor: In llGetNotecardLine() use existing GetInventoryItem() rather than ↵Justin Clark-Casey (justincc)2012-07-041-10/+4
| | | | inspecting a clone of the TaskInventory dictionary that was not cloned thread-safe
* refactor: In llGetNumberOfNotecardLines() use existing GetInventoryItem() ↵Justin Clark-Casey (justincc)2012-07-041-10/+4
| | | | rather than inspecting a clone of the TaskInventory dictionary that was not cloned thread-safe
* refactor: use existing GetInventoryItem() in GetScriptByName(), itself ↵Justin Clark-Casey (justincc)2012-07-041-13/+9
| | | | renamed from ScriptByName()
* refactor: In llGetInventoryType() use existing GetInventoryItem()Justin Clark-Casey (justincc)2012-07-041-11/+5
|
* refactor: In llGetInventoryCreator() use existing GetInventoryItem()Justin Clark-Casey (justincc)2012-07-041-12/+8
|
* refactor: In llGetInventoryPermMask() use existing GetInventoryItem()Justin Clark-Casey (justincc)2012-07-041-24/+21
|
* refactor: in llGetInventoryPermMask use existing GetInventoryItem()Justin Clark-Casey (justincc)2012-07-041-23/+19
|
* refactor: In llRemoteLoadScriptPin() use existing GetInventoryItem()Justin Clark-Casey (justincc)2012-07-041-20/+5
|
* refactor: replace use of LSL_Api.GetTaskInventoryItem() with existing ↵Justin Clark-Casey (justincc)2012-07-041-22/+11
| | | | GetInventoryItem()
* refactor: In llGetInventoryKey() use existing GetInventoryItem()Justin Clark-Casey (justincc)2012-07-041-15/+9
|
* In llMessageLinked() use GetInventoryItems() rather than cloning ↵Justin Clark-Casey (justincc)2012-07-041-4/+2
| | | | | | TaskInventory directory GetInventoryItems() returns a new list and so is equivalent, and creates this list under lock whereas Clone() is not thread-safe
* In llRequestInventoryData() use GetInventoryItems() rather than cloning ↵Justin Clark-Casey (justincc)2012-07-041-3/+2
| | | | | | TaskInventory directory GetInventoryItems() returns a new list and so is equivalent, and creates this list under lock whereas Clone() is not thread-safe
* refactor: In llCollisionSound() use existing GetInventoryItem() method ↵Justin Clark-Casey (justincc)2012-07-041-11/+5
| | | | rather than have it iterate through TaskInventory itself.
* refactor: In llRemoveInventory() use existing GetInventoryItem() method ↵Justin Clark-Casey (justincc)2012-07-041-14/+9
| | | | rather than have it iterate through TaskInventory itself.
* refactor: make llGiveInventory() use existing GetInventoryItem() method ↵Justin Clark-Casey (justincc)2012-07-041-24/+11
| | | | rather than iterate through TaskInventory itself.
* Add preservation of running state of scripts when drag-copying.Melanie2012-07-011-0/+12
|
* Change AttachmentsModule.DetachSingleAttachmentToInv() to accept a SOG ↵Justin Clark-Casey (justincc)2012-06-281-9/+6
| | | | | | | directly instead of an item ID to then shuffle through attachments, saving CPU busywork. Almost all callers already had the sog to hand. Still checking that it's really an attachment, but now by inspecting SOG.AttachedAvatar
* If rest of first line after colon is blank then still warn about running in ↵Justin Clark-Casey (justincc)2012-06-281-11/+18
| | | | | | | XEngine if engine specified does not exist. This is to take account of situations where the user was intending to specify a script engine using colon using its default language. This probably generates few false positive as scripts are less likely to end a first line colon with a comment for other purposes.
* Avoid reporting false positives when a colon is in a comment in the first ↵Justin Clark-Casey (justincc)2012-06-281-17/+41
| | | | | | | | | line of a script where the user was not trying to select a different script engine. This works by only posting the "Selected engine unavailable" message if we're falling back on XEngine and the language is one handled by XEngine. In cases where the language is not handled or not allowed, the user will still be notified by the later compiler error. This avoids the overwhelming majority of false positives where the first line contains a : for other reasons (e.g. source control systems, vim settings, etc.) Ultimately, I think it would be better to detect script language/engine with a mechanism that didn't just rely on : detection (e.g like #! in unix scripts).
* minor: reuse colon index calculation in XEngine.OnRezScript. The index if a ↵Justin Clark-Casey (justincc)2012-06-281-2/+2
| | | | colon is found on the first line will always be the same as for the whole script.