aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine (follow)
Commit message (Collapse)AuthorAgeFilesLines
* |From: James J Greensky <jame.j.greensky@intel.com>Melanie2009-08-069-55/+59
| | | | | | | | | | | | | | | | | | | |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.
* remove some more mono compiler warningsJustin Clark-Casey2009-08-051-1/+1
|
* * Remove some mono compiler warningsJustin Clark-Casey2009-08-051-1/+1
|
* Slight change to state management for attach scheduling.Alan Webb2009-08-042-11/+9
| | | | Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
* This change adds support for the attach event in scripts.Alan Webb2009-08-042-0/+17
| | | | | | | | | | | | | | | | | | | [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-044-0/+20
| | | | allow final deletion of objects. Meant to support the attach(NULL_KEY) event,
* Formatting cleanup.Jeff Ames2009-07-281-205/+198
|
* Than you, otakup0pe, for a patch to correct llSetPos & friends' behaviorMelanie Thielker2009-07-271-14/+24
| | | | | | | for child prims. Fixes Mantis #3931
* * Updates libOMV to version 0.7.0Teravus Ovares2009-07-251-2/+4
| | | | | | | | * Uses mantis #3811 as a base (thanks jhuliman) with changes. * E-mail regarding interface changes sent to the opensim-dev list * Archive: https://lists.berlios.de/pipermail/opensim-dev/2009-July/007219.html
* Formatting cleanup.Jeff Ames2009-07-231-14/+14
|
* Thank you, otakup0pe, for a patch that enables basic auth with LSLMelanie Thielker2009-07-181-1/+17
|
* A stab at implementing llSetDamage. Not persistent.Melanie Thielker2009-07-151-1/+1
|
* Remove redundant distance limitaion in llRezAtRootMelanie Thielker2009-07-141-5/+0
| | | | | | Fixes Mantis #3887
* Formatting cleanup.Jeff Ames2009-07-111-4/+4
|
* Committing the interface change and the addition to the modules to getMelanie Thielker2009-07-102-0/+10
| | | | | | the ball rolling on replacable modules. No user functionality yet
* Thank you kindly, Godfrey, for a patch that:Charles Krinke2009-07-091-2/+4
| | | | | | | | | | | The vector parameter to llSetPos() specifies an absolute position for an unlinked prim or the root prim of a linkset; however, when the function is used by a child prim, the vector specifies a relative offset from the root prim. The changed introduced in llSetPos() treats this value as an absolute position in all cases, which has the unintended effect of mangling the position of child prims.
* Add DisableUndergroundMovement to scrpting API to allow underground movementMelanie Thielker2009-07-081-1/+3
| | | | | | | if needed. Defaults to true, so those who want to continue using underground scripted prims need to add that option and set it.
* Prevent scripts from moving prims undergroundMelanie Thielker2009-07-081-1/+4
|
* Change fields and methods in LSL API from private to protected, make someMelanie Thielker2009-07-061-99/+104
| | | | | | methods virtual
* Restore the functionality that was removed in r9928. This lets the loadMelanie Thielker2009-07-011-1/+1
| | | | | | | | | balancer plugin work again. Create a new method, GetClientEP, to retrieve only the EndPoint for script usage. Marked the purpose of the method in IClientAPI.cs with a warning. Also restored the corresponding SetClientInfo functionality.
* From: Chris Yeoh <yeohc@au1.ibm.com>Sean Dague2009-06-291-0/+1
| | | | | | | | Attached is a patch that changes the oar file saving of creation date/time to an integer instead of a string. I did this after justincc emailed me saying there is a problem with internationalisation doing it the old way and I said I'd fix it. Its been tested with MySQL and I've made the changes for MSSQL but that hasn't been well tested.
* Thank you kindly, Grumly57 for a patch that solves:Charles Krinke2009-06-281-0/+1
| | | | | | | | When a sit position is modified by llSitTarget and the sim is restarted, the object sit position is lost until llSitTarget is applied again.
* From: Alan Webb <alan_webb@us.ibm.com>Dr Scofield2009-06-251-1/+1
| | | | | | | | | | | | | | | After noticing on several occasions that the thread counts we see when running OpenSIm were bordering on the astronomical I decided to seriously investigate. After much poking I discovered that the problem is actually very simple. The XEngine secition of the example ini says that the timeout for an iden thread is in seconds, and an example value of 60 is specified. In fact, this is actually resulting in a 60mS idle timeout, which is not normally enough for a smart thread to survive. I have added a multiplier to the XEngine constructor so that the number now matches the published behavior.
* Do llEscapeURL with Uri.EscapeDataString instead of Uri.EscapeUriString.Homer Horwitz2009-06-211-1/+1
| | | | | | Not exactly right, according to the LSL docs, but similar enough, I hope. Fixes Mantis #3825.
* Publish a method on ICompiler to generate the CIL assembly pathMelanie Thielker2009-06-212-0/+8
| | | | | | Cause group deeding to apply next owner perms
* From: Chris Yeoh <yeohc@au1.ibm.com>Sean Dague2009-06-192-2/+14
| | | | | | This patch ensures that the touch positions are set during touch_end events (currently only working for touch_start and touch events).
* Give m_test* methods more reasonable namesMike Mazur2009-06-121-13/+13
| | | | | | | Changing the names of these methods because they were being picked up by nunit as tests even though they were marked private. Naming them Check* after the original Test*.
* Formatting cleanup.Jeff Ames2009-06-108-18/+18
|
* Formatting cleanup. Ignore some generated files.Jeff Ames2009-06-092-10/+10
|
* From: Alan Webb <alan_webb@us.ibm.com>Dr Scofield2009-06-093-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change addresses two issues: [1] It adds a flag field to the blendface call which allows the caller to indicate whether or not the generated asset is temporary, and whether or not the asset being replaced should be explicitly retired fromt the memory cache. The decimal values correspond to: 0 - Permanent asset, do not expire old asset 1 - Permanent asset, expire old asset 2 - Temporary asset, do not expire old asset 3 - Temporary asset, expire old asset '3' corresponds to the default behavior seen today, and is the continued behavior of the non-blendface calls. [2] The dynamic texture routines are highly-asynchronous and can be scheduled simultaneously on a multi-core machine. The nature of the texture management interfaece is such that updates may be lost, and the nature of asynchornous operation means that they may be processed out of order. A lock has been added to ensure that updates are at least atomic. No attempt has been made to enforce ordering. The lock applies to the SceneObjectPart being updated and is held for the lifetime of the TextureEntry used to carry texture updates (the one instance carries all faces supported by the prim). Users of these services should remember that the dynamic texture call is asynchronous and control will be returned *before* the texture update has actually occurred. As a result, a isubsequent GetTexture call may not return the expected asset id. A script must wait for the corresponding TEXTURE_CHANGED event before retrieving any texture information.
* Skip lone ident statments or for-loop assignmentsMike Mazur2009-06-072-3/+65
| | | | | | | | | | | | | | | | | SL's LSL supports lone idents: integer x; x; as well as lone idents in for-loop assignments: for (x; x < 10; x++) { ... } while those are errors in C# (MONO at least). This patch skips lone idents in such places. Fixes Mantis #3042.
* Allow empty assignment in for-loopMike Mazur2009-06-075-7513/+7733
| | | | | | | | | | | | For loops with no assignment are no longer syntax errors. For example, this is now valid: for ( ; i < 10; i++) { ... } Corresponding changes to lsl.{lexer,parser} in r99 in opensim-libs. Fixes Mantis #2501. Fixes Mantis #2884.
* Rename private TestllAngleBetween methodMike Mazur2009-06-071-13/+13
| | | | | | | | It seems overloading the method TestllAngleBetween confused nunit a bit and caused it to try running the private TestllAngleBetween method. The method's access modified prevented that from happening, and nunit complained.
* Correct an error where the config file name was always considered to be aMelanie Thielker2009-06-065-7/+18
| | | | | | | local file. This caused llHttpRequest and llSetInventoryPermsMask to fail on regions that load their config from a web server
* Thank you, thomax, for a patch to provide finer-grained access control toMelanie Thielker2009-06-054-4/+13
| | | | | | | scripting. Fixes Mantis #2862
* From: Chris Yeoh <yeohc@au1.ibm.com>Dr Scofield2009-06-033-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds oar file date and time (UTC) meta data to an oar file when it is created. It also adds a unique ID, though this id does not in anyway identify the machine that the oar file was created on. When an oar file with this meta data is loaded this extra information is saved with the region settings and available via LSL through: - osLoadedCreationDate() - osLoadedCreationTime() - osLoadedCreationID() If there is no meta data these fields will be blank. Subsequent oar file loads will erase the information for the previous oar file load. Persistence has only been implemented for MySQL, the other backends need updating. Overall this allows us to much more easily identify the specific version of software that clients are using. Its very straightforward to edit the oar file to change the ID string to be something more human friendly. Included in the patch is a new file OpenSim/Data/MySQL/Resources/030_RegionStore.sql required for the MySQL DB migration. btw I had a chat with justincc about this a few weeks ago since he wrote the oar file import/export and he sounded happy to accept something that included date/time information but didn't want anything that would silently leak private information like machine names.
* Thanks aduffy70 for Mantis #3762: A patch to fix llGround, llGroundNormal, ↵Dahlia Trimble2009-06-031-42/+80
| | | | and llGroundSlope
* Minor: Change OpenSim to OpenSimulator in older copyright headers and ↵Jeff Ames2009-06-0154-54/+54
| | | | LICENSE.txt.
* From: Chris Yeoh <cyeoh@au1.ibm.com>Dr Scofield2009-05-271-1/+4
| | | | | | | | | | | | The attached patch implements llPassTouches. It has been added to the export/import XML along with the flag for AllowedInventoryDrop. The MySQL backend has been updated as well, though I haven't done one of those before so could do with a check. I added the migration mysql file as well. The other data backends need updating as well.
* * Upped version number to 0.6.5lbsa712009-05-251-2/+2
|
* Revert "From: Chris Yeoh <cyeoh@au1.ibm.com>"Dr Scofield2009-05-251-4/+1
| | | | | This reverts r9666. for some reason the mysql update does not work.
* From: Chris Yeoh <cyeoh@au1.ibm.com>Dr Scofield2009-05-251-1/+4
| | | | | | | | | | | | The attached patch implements llPassTouches. It has been added to the export/import XML along with the flag for AllowedInventoryDrop. The MySQL backend has been updated as well, though I haven't done one of those before so could do with a check. I added the migration mysql file as well. The other data backends need updating as well.
* From: Alan Webb <alan_webb@us.ibm.com>Dr Scofield2009-05-223-0/+69
| | | | | | | | | | Changes to support client-side image pre-caching in the region. This commit adds an additional calling sequence to the DynamicTexture data and URL calls. The new interface allows a dynamic image to be loaded into a specific object face (rather than the mandatory ALL_SIDES supported today. This is in part fulfilment of ticket #458.
* cleaning out warnings.Dr Scofield2009-05-223-11/+13
| | | | | | NOTE: we currently have a gazillion warnings caused stuff flagged as "obsolete" (OGS1 stuff) --- what's up with that?
* normalize quats before applying llSetRot()Dahlia Trimble2009-05-211-1/+3
|
* From: Alan Webb <alan_webb> & Dr Scofield<drscofield@xyzzyxyzzy.net>Dr Scofield2009-05-182-22/+22
| | | | | Disable use of log4net in script domains to avoid mono 2.4 aborts.
* From: Alan Webb <alan_webb@us.ibm.com>Dr Scofield2009-05-181-2/+2
| | | | | | | | | Fixes: [1] Sharing exception on remote OAR management [2] Occasional 505 error talking to Tomcat [3] Occasional mono aborts caused by mlog in the script engine's app domain (mono 2.4)
* Heart surgery on asset service code bits. Affects OpenSim.ini configuration ↵diva2009-05-152-8/+14
| | | | | | | | | | | | -- please see the example. Affects region servers only. This may break a lot of things, but it needs to go in. It was tested in standalone and the UCI grid, but it needs a lot more testing. Known problems: * HG asset transfers are borked for now * missing texture is missing * 3 unit tests commented out for now
* Make the LSL HTTP server create and give out URLs to scriptsMelanie Thielker2009-05-132-14026/+14346
|
* Add most of the meat to the LSL HTTP serverMelanie Thielker2009-05-131-1/+7
|