Commit Graph

99 Commits

Author SHA1 Message Date
Justin Clarke Casey
9f6b8ec9b0 minor: Remove some mono compiler warnings. Uncomment code when it's actually being used. 2009-04-15 19:46:37 +00:00
Melanie Thielker
3c338e4e56 Convert both script engines to new region module format. Add proper unload
handling to XEngine. Add needed stubs to DotNetEngine.
2009-04-15 18:51:17 +00:00
Melanie Thielker
f6f3737fe8 Fix a regression where animations would only be sent if the avatar has
attachments. Convert base types to LSL types for event marshalling through
IScriptModule to avoid parameter errors.
2009-04-12 02:42:05 +00:00
Melanie Thielker
217b2d93ae Adding a script event, changed(CHANGED_ANIMATION)
This is sent to all root prims of all attachments of an avatar when the
animation state changes. llGetAnimation() can thenbe used to find the
new movement animation. This eliminates the need for fast timers in AOs
2009-04-11 16:51:27 +00:00
Melanie Thielker
a7de0ae9ec Make the scrpt engines ignore any script that begins with //MRM: 2009-04-10 21:44:27 +00:00
Melanie Thielker
8902923b12 Introduce IXmlRpcRouter, an interface that allows registering XMLRPC
UUIDs with a central marshaller for grids, or publish the ULS for objects
elsewhere.
2009-04-10 21:08:33 +00:00
Melanie Thielker
0377ddb5de Add events to IScriptEngine to notify scripting modules of the removal
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.
2009-04-10 19:07:41 +00:00
Melanie Thielker
706a2df516 Read the .map files in on sim startup. Also clean them up when an assembly
is deleted.
2009-03-26 15:06:20 +00:00
Melanie Thielker
8dfe8a0d1d Make the error messages passed to RegionReady more descriptive
Patch by antont, thank you.
Fixes Mantis #3338
2009-03-26 01:02:19 +00:00
Melanie Thielker
b83ad8a97b Thank you, dslake, for a patch that fixes XEngine linemap handling.
Fixes Mantis #3321
2009-03-22 11:57:00 +00:00
Charles Krinke
08c76989a7 Mantis#3187. Thank you kindly, DoranZemlja for a patch that:
Adds a warning for an LSL construct that exploits a
popular list memory saving hack.
2009-02-23 02:43:51 +00:00
Jeff Ames
818af9d482 Refactor log4net logger handling in script engine. (#3148) 2009-02-22 01:26:18 +00:00
Melanie Thielker
0086f9bd92 Fix the windows sharing violations on script crossings 2009-02-18 22:32:25 +00:00
Dr Scofield
180be7de07 this is step 2 of 2 of the OpenSim.Region.Environment refactor.
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
2009-02-10 13:10:57 +00:00
Dr Scofield
9b66108081 This changeset is the step 1 of 2 in refactoring
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!
2009-02-06 16:55:34 +00:00
Sean Dague
efcf00ee60 From: Christopher Yeoh <yeohc@au1.ibm.com>
This patch fixes the problem where if an object containing a script is
deleted at the same time as an object containing the same script is
rezzed, it can result in the assembly file being deleted after the
second object script initialisation has found it but not started using
it yet, resulting in the script not starting up.
2009-02-05 16:12:51 +00:00
Jeff Ames
6126c687c1 Update svn properties, minor formatting cleanup. 2009-01-30 09:03:23 +00:00
Dr Scofield
ce1e1854b1 From: Christopher Yeoh <yeohc@au1.ibm.com>
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.
2009-01-28 09:52:09 +00:00
Dr Scofield
a3ac702941 From: Christopher Yeoh <yeohc@au1.ibm.com>
Adding Oarfileloaded and EmptyScriptCompileQueue event support which
allows (with a module) for programmatic notification of when a region
objects and scripts are up and running after a server start or
load-oar.
2009-01-28 09:22:12 +00:00
Teravus Ovares
8e01f75784 * Progressive texture patch + PriorityQueue put into the LLClient namespace.
* Updates LibOMV to r2362
2009-01-19 17:11:57 +00:00
Dahlia Trimble
630ce5b264 Revert progressive texture patch from r8001 until issues can be addressed 2009-01-10 09:15:23 +00:00
Dahlia Trimble
3bdd4db3fd Thanks jhurliman for a patch that implements progressive texture downloading - Mantis #2655 2009-01-10 01:46:47 +00:00
Melanie Thielker
81a4fe9db7 Insert a 15 seconds delay before the script engine starts loading scripts 2008-12-28 17:22:31 +00:00
idb
3fe966d6b3 An initial implementation of llMinEventDelay in XEngine.
Not implemented yet in DotNetEngine.
Fixes Mantis #2830
2008-12-21 19:04:06 +00:00
Teravus Ovares
ca0de93d9a * Adding some locks to XEngine's m_PrimObjects which were prone to 'the collection was modified' 2008-12-17 15:30:26 +00:00
idb
84ba5dd962 Fix an ArgumentNullException when moving a DotNet scripted object to the next region 2008-12-06 14:55:18 +00:00
Justin Clarke Casey
915593bfbc * refactor: Rip out SOP inventory from the partial into a separate class
* 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
2008-11-21 21:16:42 +00:00
Melanie Thielker
f518ca7feb Reapply r7369 r7367 r7366 r7370 r7381. This brings it back up to the new
libOMV.
2008-11-19 06:25:34 +00:00
Melanie Thielker
3234472d62 Reverting the texture sending patch and the new libOMV. This makes this
release a direct descendant of the stable 7364, with all the features and
none of the issues.
This omits the following patch chain: r7383 r7382 r7381 r7377 r7375 r7373
r7372 r7370 r7369 r7368 r7367 r7366
2008-11-19 06:15:21 +00:00
Justin Clarke Casey
93b18d7323 * Remove Appdomain code in XEngine.cs 2008-11-17 21:36:12 +00:00
Justin Clarke Casey
c25a0ea792 * Update libOMV to r2359. This is necessary for the progressive texture patch
* Update libopenjpeg as well for this patch.
* Appears to be okay on a very short sniff test
* Source code will be placed in opensim-libs shortly
2008-11-17 21:00:34 +00:00
Melanie Thielker
ca35b49b70 Make scripts in objects rezzed from script compile synchronously to close
a timing gap. Still not 100%, but getting there
2008-11-13 19:00:46 +00:00
Melanie Thielker
664e8a464e Script region crossing. This has not user functionality, but lays all the
groundwork.
2008-11-09 19:30:40 +00:00
Melanie Thielker
833f5e8bed Refactor IEventReceiver back into IScriptEngine 2008-11-08 02:24:34 +00:00
Justin Clarke Casey
9366a234cf * refactor: Convert most non SOP methods to use SOG.IsAttachment rather than SOP.IsAttachment 2008-11-01 22:04:35 +00:00
Teravus Ovares
c26d0ebc19 * Added missing dependencies that was causing build to fail in windows. Mono doesn't seem to care. 2008-10-17 01:59:43 +00:00
Homer Horwitz
ae9e38bf3f Fixed (mono-)script handling for SL viewer 1.21:
- Added two missing caps (UpdateScriptAgent, UpdateScriptTask)
- Added one missing EventQueue event (ScriptRunningReply)
- Changed DNE and XEngine to use this new event
As we only use the mono engine anyway, the "Mono" checkbox is set by
default but doesn't have any function.
2008-10-16 21:46:03 +00:00
Melanie Thielker
638cce09d1 Restore "friendly errors" to the XEngine 2008-10-07 21:59:56 +00:00
Melanie Thielker
ab260b5d23 Fix: Mantis#2326: Fix: privilege escalation through attach from ground
Fix: objects being duplicated inventory on detach. Fix: Mad jumping around of
attachments while editing. Fix: Attachments being persisted to database on
login. Fix: Attachments being persisted when changed by a script like
invisprim refresh. Fix: Attachpoint set, but not reset correctly. Fix: prevent
spurious full updates while editing attachments. Several other fixes
2008-10-03 21:44:33 +00:00
Melanie Thielker
c2308d8a7d Add explicit CultureInfo to the script compile thread in DotNetEngine to
ensure that scripts will compile on nonenglish systems
2008-09-28 20:29:56 +00:00
Melanie Thielker
85068dae60 Add friendly error messages to both engines. 2008-09-27 05:31:43 +00:00
Melanie Thielker
b416422349 Kill "Compile successful" message when rezzing prims/wearing attachments
Changes behavior to send on_rez event to prims when rezzed from agent
inventory.
2008-09-26 20:18:31 +00:00
Melanie Thielker
e5db6a75d0 Finishing the code cleanup in DNE, make llDie work again in DNE.
Add some compile messages from XEngine into DNE as well.
2008-09-26 17:59:36 +00:00
Melanie Thielker
f926d917cb Fix script engine name parsing for DotNetEngine to make that actually work
Add a reference for Windows builds
2008-09-25 17:54:44 +00:00
Melanie Thielker
f11107821e Add an extension to allow registering multiple interfaces of a type with
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
2008-09-25 17:26:32 +00:00
Melanie Thielker
f3c8963c86 Convergence is almost complete. This brings the diff between the API to < 10k
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.
2008-09-25 05:13:44 +00:00
Melanie Thielker
fb7a29a5ef Rename lots of stuff in DNE to reduce source code differences in the
LSL implementation files. Rename lots of stuff in XEngine for the same
reason. Move methods between interfaces. Just refactor stuff.
2008-09-24 13:18:06 +00:00
Melanie Thielker
218902bedc Decouple AsyncCommands from XEngine and the script instance. Make
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.
2008-09-24 02:58:05 +00:00
Melanie Thielker
70d264ee6c Update the permissions system to handle scripts and notecards the way
it was meant to. No functional changes, just better code
2008-09-23 03:36:16 +00:00
Melanie Thielker
b8a39a4dde Remove the script engine identifier tag, so the compiler just sees
the language specifier. Makes language specifiers work again with
script engine specifiers.
2008-09-22 11:18:49 +00:00