| Commit message (Collapse) | Author | Files | Lines |
|
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.
|
|
it was meant to. No functional changes, just better code
|
|
the language specifier. Makes language specifiers work again with
script engine specifiers.
|
|
|
|
//XEngine: or //DotNetEnine: , optionally followed by a language
like //XEngine:lsl, and it will be run on the chosen engine.
|
|
ordinary region modules and are able to coexist in one instance.
See http://opensimulator.org/wiki/ScriptEngines for details. There were
changes to OpenSim.ini.example, please note DefaultScriptEngine.
Also see the User docs and FAQ on the Wiki. Default is DotNetEngine.
|
|
rather than a special one
|
|
previous commit
|
|
* On script rez, XEngine was taking an m_scripts lock and then later on an m_parts lock when looking for a part by local id
* In the meantime, a scene object being deleted would take an m_parts lock and then later on try to take an m_scripts lock when it tried to trigger script removal
* There may be better ways to resolve this, but I believe that in general, we must always take an m_parts lock before an m_scripts lock
|
|
Fix a nasty concurrency issue that could cause a high event frequency
to start more than one thread pool job for a single script.
|
|
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.
|
|
OpenSim.example.ini
* Particularly important for max threads since setting this to 2 was causing all events to wait behind the regularly sleeping maintenance event
|
|
|
|
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.
|
|
duplicate delivery of state_entry if a region is restarted just after
saving the script. Changes script state saves to no longer abort long-
running event handlers. Queues the save instead. Adds shutdown handler
to save script state on irderly shutdown
|
|
* 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.
|
|
cleanup: warnings, readability
|
|
1000 chars to avoid the exception thrown by libomv at 1100 chars.
Change string->int conversion so it copes with non-numeric chars
after the number and no longer uses a float to parse the value.
|
|
|
|
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
|
|
It is now possible to use module interfaces without referencing Scene.
Place those interfaces in OpenSim/Region/Interfaces. They may not
use any refs from OpenSim.Region.Environment as parameters.
This resolves a circular library ref introduced in r5949
|
|
|
|
the ObjectFlags. Good catch, gsky, thank you!
|
|
|
|
|
|
Implements additional unlink modes (unlink root prim from link set, some
multi-set operations). Linking (single and mutiple) fully implemented.
Consistent numbering of links while in world. Link/delink with predictable
link numbering. Correct link numbers in LSL.
Not all multi-set ops implemented. Link numbers still change when taken and
re-rezzed.
|
|
Untangles llDie handling in XEngine, which resulted in a thread being
aborted while executing inside of Scene.
|
|
esets script permissions when a script is recompiled.
|
|
|
|
|
|
In LSL, the state command should have an immediate effect.
The OpenSim script engine seems to wait until the function
ends to process the state transition.
|
|
Fix a script Xengine deadlock/hang if llResetScript is used in changed()
|
|
It would appear that calling llResetScript() in state_entry() causes deadlock of region.
Probably due to llResetScript calling state_entry again. llResetScript should see who called it,
and not recall state_entry() after a state/variable reset. Once this script is in a prim,
the region/world/debug/script window shows it consuming the server (from 2,400 to 800,000 milliseconds).
|
|
massaging OSHttpRequestPump to not abort on exceptions...
|
|
Sets XEngine threads to en-US culture before calling script events,
fixes i18n issues with european locales.
|
|
not break trunk.
|
|
hers, I mean, fire.
|
|
|
|
Fixes persistence of variable values to address
broken persistence in the big refactor.
|
|
|
|
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!
|
|
and its copy LSL_ScriptCommands.cs
|
|
hard-coded port numbers.
|
|
override the default method of calculating how many prims a parcel can have.
|