aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared/Instance (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Experimental! Implement ISponsor in ScriptInstanceMelanie2009-08-071-12/+7
|
* Another stab at cmickeyb's patch for script GC.Melanie2009-08-071-7/+14
| | | | | Moved the Close() for the appdomain-hosted parts into a new destructor on ScriptInstance.
* Revert the XEngine memleak patch, it causes premature GC.Melanie2009-08-071-18/+7
| | | | | This matches behavior seen with an earlier attempt to do this, apparently the sponsor mechanism does't work in Mono
* |From: James J Greensky <jame.j.greensky@intel.com>Melanie2009-08-061-7/+18
| | | | | | | | | | | | | | | | | | | |Date: Wed, 5 Aug 2009 09:51:52 -0700 |Subject: [PATCH] Closed two major memory leaks for scripted objects | |Two major memory leaks for the scripted objects were fixed |- One leak had to do with remoting acrossing app domains. When a script and | its controlling agent communicate across an application boundary, it calls | functions on a stub proxy object that then invokes the remote method on | the object in the other app domain. These stub objects (two for each script) | were setup to have infinate lifetimes and were never being garbage collected. |- The second leak was the result of adding a scene object part instance method | to a scene event and never removing it. This cause the event's delegate list | to maintain a link to that object which is then never freed as the scene event | object is never destroyed. Patch applied, please direct feedback to me. Possible issue: Longtime idle scripts like vendors may fail.
* Slight change to state management for attach scheduling.Alan Webb2009-08-041-10/+7
| | | | Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
* This change adds support for the attach event in scripts.Alan Webb2009-08-041-0/+16
| | | | | | | | | | | | | | | | | | | [1] Added a new OnAttach event to Scene/EventManager [2] Hooked up existing attach event handler in XEngine. [3] Modified SceneGraph and Scene.Inventory to trigger attach events at the appropriate places. I was forced to distribut the changes across two files because of the way attach processing is distributed across the two files. [4] In the case of RezSingleAttachmentFromInventory it is necessary to handle event scheduling in a special way. There is no synchronous path available, so the fact that this object is attached, and who it is attached to, is cached when the ScriptInstance is created. When the script is started, the attached handler is driven after on_rez (but before changed, this should be reviewed). Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
* Add plumbing for the SceneObjectDeleter to wait for the script engine toMelanie2009-08-041-0/+5
| | | | allow final deletion of objects. Meant to support the attach(NULL_KEY) event,
* Correct an error where the config file name was always considered to be aMelanie Thielker2009-06-061-0/+1
| | | | | | | local file. This caused llHttpRequest and llSetInventoryPermsMask to fail on regions that load their config from a web server
* Minor: Change OpenSim to OpenSimulator in older copyright headers and ↵Jeff Ames2009-06-012-2/+2
| | | | LICENSE.txt.
* cleaning out warnings.Dr Scofield2009-05-221-9/+12
| | | | | | NOTE: we currently have a gazillion warnings caused stuff flagged as "obsolete" (OGS1 stuff) --- what's up with that?
* From: Alan Webb <alan_webb> & Dr Scofield<drscofield@xyzzyxyzzy.net>Dr Scofield2009-05-181-20/+20
| | | | | Disable use of log4net in script domains to avoid mono 2.4 aborts.
* Convert both script engines to new region module format. Add proper unloadMelanie Thielker2009-04-151-0/+7
| | | | | | handling to XEngine. Add needed stubs to DotNetEngine.
* Actually remove the script if it tries to remove itself.Melanie Thielker2009-04-121-4/+10
| | | | | | Fixes Mantis #2929
* Thanks BlueWall for a patch that adds Hypergrid dynamic linking to ↵diva2009-04-051-0/+1
| | | | osTeleportAgent. Fixes mantis #3408.
* Avoid writing script state to the filesystem if the state has not changed.Melanie Thielker2009-03-261-14/+19
| | | | | | | Remove the unneccessary double check that was only used to provide a meaningless warning message for a corner case.
* Mantis#3218. Thank you kindly, TLaukkan (Tommil) for a patch that:Charles Krinke2009-02-221-4/+3
| | | | | | | | | * Added log4net dependency to physxplugin in prebuild.xml. * Added missing m_log fields to classes. * Replaced Console.WriteLine with appropriate m_log.Xxxx * Tested that nant test target runs succesfully. * Tested that local opensim sandbox starts up without errors.
* Refactor log4net logger handling in script engine. (#3148)Jeff Ames2009-02-221-18/+18
|
* * Consistently lock part.TaskInventory as pointed out in ↵Justin Clarke Casey2009-02-201-7/+21
| | | | | | | | | | | http://opensimulator.org/mantis/view.php?id=3159 * Not locking causes enumeration exceptions as described in this matis * part.TaskInventory needs to be locked for every access as it's a dictionary * Extra locking will hopefully not cause any major issues - in places where the enumeration of the dictionary performs other lock or long running operations, the dictionary is cloned instead
* Force plugin state update when region crossingMelanie Thielker2009-02-191-0/+4
|
* Try this, then :) remove just one line from script serialization, Melanie Thielker2009-02-191-1/+0
| | | | | | hunting the bug
* Refix the fix, adding a forgotten lineMelanie Thielker2009-02-191-0/+1
|
* Attempt to fix a Windows only race in thread terminationMelanie Thielker2009-02-191-1/+8
|
* this is step 2 of 2 of the OpenSim.Region.Environment refactor.Dr Scofield2009-02-102-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NOTHING has been deleted or moved off to forge at this point. what has happened is that OpenSim.Region.Environment.Modules has been split in two: - OpenSim.Region.CoreModules: all those modules that are either directly or indirectly referenced from other OpenSim packages, or that provide functionality that the OpenSim developer community considers core functionality: CoreModules/Agent/AssetTransaction CoreModules/Agent/Capabilities CoreModules/Agent/TextureDownload CoreModules/Agent/TextureSender CoreModules/Agent/TextureSender/Tests CoreModules/Agent/Xfer CoreModules/Avatar/AvatarFactory CoreModules/Avatar/Chat/ChatModule CoreModules/Avatar/Combat CoreModules/Avatar/Currency/SampleMoney CoreModules/Avatar/Dialog CoreModules/Avatar/Friends CoreModules/Avatar/Gestures CoreModules/Avatar/Groups CoreModules/Avatar/InstantMessage CoreModules/Avatar/Inventory CoreModules/Avatar/Inventory/Archiver CoreModules/Avatar/Inventory/Transfer CoreModules/Avatar/Lure CoreModules/Avatar/ObjectCaps CoreModules/Avatar/Profiles CoreModules/Communications/Local CoreModules/Communications/REST CoreModules/Framework/EventQueue CoreModules/Framework/InterfaceCommander CoreModules/Hypergrid CoreModules/InterGrid CoreModules/Scripting/DynamicTexture CoreModules/Scripting/EMailModules CoreModules/Scripting/HttpRequest CoreModules/Scripting/LoadImageURL CoreModules/Scripting/VectorRender CoreModules/Scripting/WorldComm CoreModules/Scripting/XMLRPC CoreModules/World/Archiver CoreModules/World/Archiver/Tests CoreModules/World/Estate CoreModules/World/Land CoreModules/World/Permissions CoreModules/World/Serialiser CoreModules/World/Sound CoreModules/World/Sun CoreModules/World/Terrain CoreModules/World/Terrain/DefaultEffects CoreModules/World/Terrain/DefaultEffects/bin CoreModules/World/Terrain/DefaultEffects/bin/Debug CoreModules/World/Terrain/Effects CoreModules/World/Terrain/FileLoaders CoreModules/World/Terrain/FloodBrushes CoreModules/World/Terrain/PaintBrushes CoreModules/World/Terrain/Tests CoreModules/World/Vegetation CoreModules/World/Wind CoreModules/World/WorldMap - OpenSim.Region.OptionalModules: all those modules that are not core modules: OptionalModules/Avatar/Chat/IRC-stuff OptionalModules/Avatar/Concierge OptionalModules/Avatar/Voice/AsterixVoice OptionalModules/Avatar/Voice/SIPVoice OptionalModules/ContentManagementSystem OptionalModules/Grid/Interregion OptionalModules/Python OptionalModules/SvnSerialiser OptionalModules/World/NPC OptionalModules/World/TreePopulator
* This changeset is the step 1 of 2 in refactoringDr Scofield2009-02-062-4/+4
| | | | | | | | | | | | | | | | | | | | OpenSim.Region.Environment into a "framework" part and a modules only part. This first changeset refactors OpenSim.Region.Environment.Scenes, OpenSim.Region.Environment.Interfaces, and OpenSim.Region.Interfaces into OpenSim.Region.Framework.{Interfaces,Scenes} leaving only region modules in OpenSim.Region.Environment. The next step will be to move region modules up from OpenSim.Region.Environment.Modules to OpenSim.Region.CoreModules and then sort out which modules are really core modules and which should move out to forge. I've been very careful to NOT BREAK anything. i hope i've succeeded. as this is the work of a whole week i hope i managed to keep track with the applied patches of the last week --- could any of you that did check in stuff have a look at whether it survived? thx!
* From: Christopher Yeoh <yeohc@au1.ibm.com>Dr Scofield2009-01-281-33/+49
| | | | | | | | | | | | | | | | | | | This changeset fixes a race condition where a script (XEngine run) can startup before a reference is added to it in all of the required places in the XEngine class. The effect of this is that a script can sometimes on startup miss script events. For example a script which starts up and initialises itself from a notecard may never receive the dataserver event containing the notecard information. The patch isn't as clean as I'd like - I've split the constructor of ScriptInstance up so it does everything it did before except call Startup and post events like state_entry and on_rez. An Init function has been added which is called after the ScriptInstance object has been added to the necessary data structures in XEngine. Happy to rework it if someone suggests a better way of doing it.
* An initial implementation of llMinEventDelay in XEngine.idb2008-12-212-1/+46
| | | | | | Not implemented yet in DotNetEngine. Fixes Mantis #2830
* Persist script permission mask and granteridb2008-12-212-0/+50
|
* Remove some of the XEngine chattinessMelanie Thielker2008-12-021-1/+1
|
* Comment the ScriptSponsor and restore the indefinite lifetime forMelanie Thielker2008-11-291-3/+3
| | | | | | scripts until that can be better debugged
* * minor: remove mono compiler warningsJustin Clarke Casey2008-11-271-2/+2
|
* Attempt to give script objects a proper lease time (DNE and xengine). Relies ↵Tedd Hansen2008-11-261-0/+11
| | | | on GC. Also removed lease for LSL_Api as it strictly speaking should not be MarshalByRef. Or should it? If so I broke scripting! :)
* * refactor: Rip out SOP inventory from the partial into a separate classJustin Clarke Casey2008-11-211-4/+4
| | | | | | | | * SceneObjectPartInventory.cs isn't a particularly good name but it's probably not got a long life * A proper inventory interface to follow * Parallel changes for other inventory partial classes to follow at a later date
* minor: remove mono compiler warningsJustin Clarke Casey2008-11-101-1/+0
|
* Script region crossing. This has not user functionality, but lays all theMelanie Thielker2008-11-091-0/+14
| | | | | | groundwork.
* Refactor IEventReceiver back into IScriptEngineMelanie Thielker2008-11-081-0/+11
|
* Attachments, attachments, and, did I say attachments?Melanie Thielker2008-11-071-1/+1
| | | | | | Too many fixes to list.
* 2nd stab at that prim loading nastyMelanie Thielker2008-10-111-3/+6
|
* Fix an exception handling issue in XEngineMelanie Thielker2008-10-101-1/+1
|
* Restore "friendly errors" to the XEngineMelanie Thielker2008-10-071-20/+1
|
* Mantis #2293Melanie Thielker2008-09-291-0/+3
| | | | | | | Fix a null reference exception when the exception thrown by a script is not a TargetInvocationException
* Add friendly error messages to both engines.Melanie Thielker2008-09-271-1/+50
|
* Mantis #2277Melanie Thielker2008-09-261-1/+1
| | | | | | Patch up a type name change in libomv. Thanks for tracking that down, idb
* Full API convergence. Api is back in LSL_Api.cs and OSSL_Api.cs.Melanie Thielker2008-09-261-0/+3
| | | | | | | | | The binaries are still different, but that is only a small step away now. The OSSLPrim has been removed. This commit will breal all scripts using Prim.Scale(), etc, syntax. It was not secure and will have to be brought back in another form.
* Add an extension to allow registering multiple interfaces of a type withMelanie Thielker2008-09-251-61/+65
| | | | | | | | | | Scene. Make the script engines check that the engine name in the //Engine:language comment is a valid engine and treat it as a normal comment if it's not. //DotNetEngine: needs to be written as //ScriptEngine.DotNetEngine: now, since that is it's real internal name. //XEngine: still works
* Convergence is almost complete. This brings the diff between the API to < 10kMelanie Thielker2008-09-251-6/+6
| | | | | | | | and makes it use a common set of types in both engine. Fixes the issues with running both engines and HTTP requests / listens / timers etc.. Also fixes a couple of minor Scene issues and a CTB by nullref.
* Decouple AsyncCommands from XEngine and the script instance. MakeMelanie Thielker2008-09-241-10/+6
| | | | | | | | all methods needed outside the API ststic. Async command processing is now wholly internal to the API. This sets the stage for the next convergence step.
* Update svn properties, minor formatting cleanup.Jeff Ames2008-09-211-1/+1
|
* * Duh, forgot I had undone some of the changes I meant to include in the ↵Justin Clarke Casey2008-09-191-12/+5
| | | | previous commit
* XEngine: fix collisions, add event coalescing for collision events.Melanie Thielker2008-09-181-108/+136
| | | | | | | Fix a nasty concurrency issue that could cause a high event frequency to start more than one thread pool job for a single script.
* From: Robert Smart (SMARTROB@uk.ibm.com)Dr Scofield2008-09-181-1/+1
| | | | | | | | Patch for new scripting method osParseJSON. also, a couple of warning bugs killed.