| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
| |
to return dynamic method objects
|
|
|
|
|
| |
Moved the Close() for the appdomain-hosted parts into a new destructor
on ScriptInstance.
|
|
|
|
|
| |
This matches behavior seen with an earlier attempt to do this, apparently
the sponsor mechanism does't work in Mono
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|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.
|
|
|
|
| |
Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
|
|
|
|
| |
allow final deletion of objects. Meant to support the attach(NULL_KEY) event,
|
|
|
|
|
|
| |
Cause group deeding to apply next owner perms
|
|
|
|
|
|
|
| |
local file. This caused llHttpRequest and llSetInventoryPermsMask to fail
on regions that load their config from a web server
|
|
|
|
|
|
|
| |
scripting.
Fixes Mantis #2862
|
|
|
|
| |
LICENSE.txt.
|
|
|
|
|
|
| |
handling to XEngine. Add needed stubs to DotNetEngine.
|
|
|
|
|
|
|
| |
UUIDs with a central marshaller for grids, or publish the ULS for objects
elsewhere.
|
|
|
|
|
|
|
|
|
| |
of objects from the scene, and of scripts from objects. This facilitates
the development of modules that can register prims with externall servers
for inbound email and XMLRPC. Currently implemented in XEngine only.
Also applying cmickeyb's compiler locking patch, since it seems risk-free.
|
|
|
|
|
|
|
| |
Adds a warning for an LSL construct that exploits a
popular list memory saving hack.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
Not implemented yet in DotNetEngine.
Fixes Mantis #2830
|
|
|
|
|
|
| |
a gratuitious asset fetch when region crossing.
|
|
|
|
|
|
| |
a timing gap. Still not 100%, but getting there
|
|
|
|
|
|
| |
groundwork.
|
|
|
|
| |
release. Still messy as hell and doesn't really work yet. Will undergo dramatic changes. AND MOST IMPORTANTLY: Will be conformed to work in coop with todays DNE and XEngine, hopefully one day providing a common interface for all components.
|
|
|
|
|
|
| |
No user functionality yet
|
| |
|
|
|
|
|
|
|
| |
Causes the dataserver event to return "OpenSim" when running on OpenSim.
Requires ThreatLevel to be "High" or above to function.
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
| |
The entire LSL API is now in the single, shared file
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api_Base.cs
This is for both engines. The OSSL function are still separate.
|
|
|
|
|
|
|
| |
LSL implementation files. Rename lots of stuff in XEngine for the same
reason. Move methods between interfaces. Just refactor stuff.
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
XEngine fixes: prevent queue overruns, prevent spamming when no key
is down. Release controls when conflicting permissions are requested
or permissions are refused later. Release when prim or script are deleted.
Fixes Scene script instance deletion semantics.
|
| |
|
|
|
|
|
|
|
| |
This allows cross-api method calls on the implementation and also allows
"Meta APIs" that only provide common functionality to other APIs
|
|
|
|
|
|
|
|
|
| |
Floating text, Rotation, Texture animation, Particle System
This will make "Eye Candy" scripts work without modification in
XEngine. The use of the CHANGED_REGION_RESTART hack is no longer
needed. Implemented in MySQL only, hovertext also in SQLite.
|
|
|
|
|
|
|
| |
* This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point. Regular people should let the dust settle.
* This has been tested to work with most basic functions. However.. make sure you back up 'everything' before using this. It's that big!
* Essentially we're back at square 1 in the testing phase.. so lets identify things that broke.
|
|
|
|
|
|
|
|
|
| |
which is a thin wrapper around a IWorkItemResult from the SmartThreadPool.
However, it is very easy to reimplement on top of basic threading and therefore
makes the IScriptInstance class independent of the specific threading
implementation.
|
|
|
|
|
|
|
| |
llDetectedLink(). Also a small refactor to remove an interface member
from IScriptEngine.
|
|
|
|
|
|
|
|
| |
engines that want to use the XEngine's instance handling and state
persistence can do so. IScriptInstance is optional, but it does
require the SmartThreadPool if it is used.
|
|
|
|
|
|
|
| |
an implicit reference into a proxied one and further reduces memory
consumption of XEngine
|
|
|
|
|
| |
Fix a script Xengine deadlock/hang if llResetScript is used in changed()
|
|
|
|
|
|
|
|
| |
Another new OSSL function for returning the name of the script engine
currently running, osGetScriptEngineName, added to both DotNet and XEngine
OSSL API.
|
|
|
|
|
| |
not break trunk.
|
| |
|
|
api and compiler out of XEngine"
"First stage in a major Script Engine refactor, that will result in the LSL implementaions ebing reconverged. Not there yet, but one major part is done."
Thank you, Melanie!
|