| Commit message (Collapse) | Author | Files | Lines |
|
out that prim's local id in the error message.
|
|
|
|
Apart from one obvious bug, this was failing because attempting to serialize the script from inside the script (as part of saving the attachment as an inventory asset) was triggering an extremely long delay.
So we now don't do this. The state will be serialized anyway when the avatar normally logs out.
The worst that can happen is that if the client/server crashes, the attachment scripts start without previous state.
|
|
|
|
|
|
Adding ability to place script engine assemblies outside
the codebase directories.
Uses new [XEngine] option: ScriptEnginesPath = "path_to_assemblies"
Signed-off-by: Melanie <melanie@t-data.com>
|
|
|
|
|
|
Revert "Reverting this for now, but this needs to go in again."
This reverts commit c0d9ab941dd1ab88f00f6d4f2a53a4fe5c605e57.
|
|
Revert "Another stab at http://opensimulator.org/mantis/view.php?id=4858. Eliminated more nested locks."
This reverts commit ffbae52a130376ecaa04d7d475709985c62c06ed.
|
|
more nested locks.
|
|
Eliminated the nested locks of m_Scripts and m_PrimObjects.
|
|
know what"
This reverts commit f798679b8005e532f933553007cca989112f4a1d.
|
|
this is, you should test it. If you don't, don't use it.
|
|
due to unhandled file lock exception. Attempt to resolve by wrapping several instances of file create / read logic in using statements and added some error handling for locked file exceptions. If it is IDisposable, it must be disposed! The close statements are unnecessary but harmless so I have left those in. The end of the using block will close and dispose automagically.
|
|
|
|
|
|
the script hasn't yet saved state, or can't save state because of a loop
|
|
compiling it
|
|
is fully rezzed and all scripts in it are instantiated. This ensures that link
messages will not be lost on rez/region crossing and makes heavily scripted
objects reliable.
|
|
|
|
When an object was deleted, the remove script instance call was aggregating the scripting events as normal.
This would queue a full update of the prim before the viewer was notifed of the deletion of that prim (QuitPacket)
On some occasions, the QuitPacket would be sent before the full update was dequeued and sent.
In principle, you would think that a viewer would ignore updates for deleted prims. But it appears that in the Linden viewer (1.23.5),
a prim update that arrives after the prim was deleted instead makes the deleted prim persist in the viewer. Such prims have no properties
and cannot be removed from the viewer except by a relog.
This change stops the prim event aggregation call if it's being deleted anyway, hence removing the spurious viewer-confusing update.
|
|
|
|
|
|
It was used. By the API, which is dynamically loaded. So it didn't complain
until it hit Bamboo
This reverts commit 33d5018e94e52cb875bf43bced623bdc6aa41ef0.
|
|
|
|
not in a funky debug window.
|
|
Committed from my other box where git is not configured properly
Signed-off-by: Melanie <melanie@t-data.com>
|
|
Change the reader to wrap old-style definitions in new style wrappers.
Change importer to not check irrelevant data that can't be reconstructed
This removes the last bit of knowledge of XEngine's .state files from core.
|
|
rez from inventory.
|
|
Add Engine=xxx attribute and check for it's presence. Ignore state data
written bby another engine
|
|
|
|
|
|
pass script state and assembly again properly. Reintroduce respecting tht
TrustBinaries flag. Changes the interregion protocol! No version bump
because it was broken anyway, so with a version mismatch it will simply
stay broken, but not crash. Region corssing still doesn't work because
there is still monkey business with both rezzed prims being pushed across
a border and attached prims when walking across a border. Teleport is
untested by may work.
|
|
internally
|
|
all scripts are loaded from the same thread, rather than launching a
new one for each script. This is only marginally slower, but avoids the
race condition that led to script engine failure.
|
|
|
|
* Added the new AppDomainLoading variable to the [XEngine] section in the example config
|
|
|
|
debug pane. This will still use DEBUG_CHANNEL currently, since it is not
fully implemented. This also removes the "Compiled successfully" message
that pops up in the viewer.
|
|
If XEngine compile fails, show script name in error message in-world as well as the exception itself
Thanks Luca Peck
|
|
|
|
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.
|
|
allow final deletion of objects. Meant to support the attach(NULL_KEY) event,
|
|
the ball rolling on replacable modules. No user functionality yet
|