aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Lock disposal of separate gdi+ objects under different threads since this ↵Justin Clark-Casey (justincc)2012-08-221-26/+42
| | | | | | | | | | prevents malloc heap corruption seen under Ubuntu 10.04.1 and 11.04 - probably a libcairo issue In testing, it appears that if multiple threads dispose of separate GDI+ objects simultaneously, the native malloc heap can become corrupted, possibly due to a double free(). This may be due to bugs in the underlying libcairo used by mono's libgdiplus.dll on Linux/OSX. These problems were seen with both libcario 1.10.2-6.1ubuntu3 and 1.8.10-2ubuntu1. They go away if disposal is perfomed under lock.
* Fix bug in SoundModule.PlayAttachedSound() where every sound update to an ↵Justin Clark-Casey (justincc)2012-08-211-3/+5
| | | | | | avatar would base its gain calculation on the previous avatar's gain, instead of the original input gain This is similar to commit d89faa which fixed the same kind of bug in TriggerSound()
* When loading an OAR, validate any group UUIDs and properly reconstruct ↵Justin Clark-Casey (justincc)2012-08-201-1/+62
| | | | | | | | | | parcel access lists. If a group UUID is present that is not on this simulator then the object or parcel is no longer group owned. This is a change from previous behaviour where such invalid UUIDs were kept. This is an adaptation of patch 0002 from http://opensimulator.org/mantis/view.php?id=6105 by Oren Hurvitz of Kitely. My adaptations are formatting only, apart from the notices about parcel owner IDs not being saved since this has now been fixed. Thanks Oren.
* Add --force flag to "kick user" console command to allow bypassing of recent ↵Justin Clark-Casey (justincc)2012-08-203-3/+3
| | | | | | | | | race condition checks. This is to allow a second attempt to remove an avatar even if "show connections" shows them as already inactive (i.e. close has already been attempted once). You should only attempt --force if a normal kick fails. This is partly for diagnostics as we have seen some connections occasionally remain on lbsa plaza even if they are registered as inactive. This is not a permanent solution and may not work anyway - the ultimate solution is to stop this problem from happening in the first place.
* Fix scripted detach of temp attachmentsMelanie2012-08-201-6/+2
|
* As per lindn spec, disable detach and drop for temp attachmentsMelanie2012-08-141-0/+8
|
* Lay some groundwork for temp attachments. Decouple attachments from inventory.Melanie2012-08-142-17/+30
|
* Fix old regression that stopped saving parcel owner data in OARs.Justin Clark-Casey (justincc)2012-08-031-1/+1
| | | | | | This was working in 0.7.2 but was accidentally removed from 0.7.3. The --publish option for "save oar" will now save oars stripped of parcel owner information as well as scene object info. Please use the --publish option if you want to publish oars that may be later loaded by others to the same grid from which they were saved.
* Fix build break.Justin Clark-Casey (justincc)2012-08-031-1/+1
|
* Update settings loading in AvatarFactoryModule which should have been in ↵Justin Clark-Casey (justincc)2012-08-031-4/+4
| | | | last commit 205f2326
* Fix the recent windows compile error by putting newFont for case "R" in ↵Justin Clark-Casey (justincc)2012-08-031-3/+8
| | | | VectorRenderModule inside its own context, rather than disposing of the old font before using it as a prototype for the new.
* attempting to fix a build issueSignpostMarv2012-08-031-2/+2
| | | | Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
* Fixed a rare bug that caused Save OAR to fail because it thought it had ↵Oren Hurvitz2012-08-031-5/+11
| | | | | | timed-out The bug manifested as follows: a large world was saved. All the assets were found. But for some unknown reason, the timeout timer was restarted. So after 1 minute it closed the Archive Writer, because it didn't receive any more assets during that minute. That caused the OAR to become corrupted because ArchiveWriteRequestExecution.Save() was still running.
* Delete old blank SOGSpamTestJustin Clark-Casey (justincc)2012-08-031-37/+0
|
* Properly dispose of all GDI+ entities used in VectorRenderModule for dynamic ↵Justin Clark-Casey (justincc)2012-08-031-253/+316
| | | | | | | textures. The convention is that if an object implements IDiposable() the code must explicitly call Dispose() or call it via the using statement. This may be particularly important for GDI+ objects since they encapsulate native code entities.
* Add simple draw test for the VectorRenderModuleJustin Clark-Casey (justincc)2012-08-021-0/+75
|
* Fix bug in SoundModule.TriggerSound() where every sound update to an avatar ↵Justin Clark-Casey (justincc)2012-07-311-3/+6
| | | | | | would base its gain calculation on the previous avatar's gain, instead of the original input gain. This was making sound attenuate oddly when there were NPCs in the region, though it could also happen with ordinary avatars.
* When copying items, copy the item description field instead of the asset ↵Justin Clark-Casey (justincc)2012-07-261-2/+3
| | | | | | | | description field. If we copy the asset description then we will only ever replicate the very first description, if there was one, not any subsequent changes. Thanks to Oren Hurvitz of Kitely for this patch from http://opensimulator.org/mantis/view.php?id=6107 I have adapted it slightly to change the order of arguments (name before description rather than vice-versa) and slightly improve some method doc.
* Move Watchdog and MemoryWatchdog classes into OpenSim.Framework.Monitoring ↵Justin Clark-Casey (justincc)2012-07-252-0/+2
| | | | with other monitoring code from OpenSim.Framework
* Rename OpenSim.Framework.Statistics to OpenSim.Framework.Monitoring.Justin Clark-Casey (justincc)2012-07-254-4/+4
| | | | This better reflects the long-term purpose of that project and matches Monitoring modules.
* Make SceneManager.OnRegionsReadyStatusChange event available.Justin Clark-Casey (justincc)2012-07-251-6/+1
| | | | | This is fired when all regions are ready or when at least one region becomes not ready. Recently added EventManager.OnRegionReady becomes OnRegionReadyStatusChange to match OnLoginsEnabledStatusChange
* Remove bad using statement in AttachmentsModuleTests.Justin Clark-Casey (justincc)2012-07-241-2/+1
| | | | It seems that the mono 2.10.8.1 doesn't choke on this but for some reason 2.4.3 fails.
* extend regression TestRezScriptedAttachmentFromInventory() to check actual ↵Justin Clark-Casey (justincc)2012-07-241-3/+19
| | | | start of script rather than just the script status reported by SOG.ContainsScripts()
* extend regression TestDetachScriptedAttachementToInventory() to check ↵Justin Clark-Casey (justincc)2012-07-241-3/+25
| | | | correct running status on a re-rezzed attachment
* Change attachment handling to remove object from the scene first as perMelanie2012-07-231-29/+59
| | | | | | justincc's original work. Sample scripts before doing so. Also refactor some crucial common code and eliminate parameters that were only ever used with the same constant value.
* BulletSim: add reference to OpenSim.Region.CoreModules in BSScene.cs ↵Robert Adams2012-07-201-1/+1
| | | | attempting to fix a mono compile error.
* Correct namespace of BinaryLoggingModule (a cut-and-paste error). Add a ↵Robert Adams2012-07-202-1/+162
| | | | simple, high performance logger for high frequency logging (physics sub-operations, for instance).
* Fix the order of operations on detach. The object must always be serializedMelanie2012-07-201-6/+10
| | | | | while still in the scene to avoid losing important script state. DeleteSceneObject can not be called before doing this!
* Comment out OnIncomingInstantMessage and OnInstantMessage handlers in ↵Justin Clark-Casey (justincc)2012-07-191-10/+10
| | | | GroupsModule, since these led to a private blank method
* Add EventManager.OnRegionLoginsStatusChange fired whenever logins are ↵Justin Clark-Casey (justincc)2012-07-191-5/+5
| | | | | | | enabled or disabled at any point, not just during initial startup. This replaces EventManager.OnLoginsEnabled which only fired when logins were first enabled and was affected by a bug where it would never fire if the region started with logins disabled.
* Establish EventManager.OnRegionReady event. This will only be triggerred ↵Justin Clark-Casey (justincc)2012-07-181-8/+2
| | | | | | once when the region is ready. Switch MapImageServiceModule to use this.
* Pass entire scene object in OnLoginsEnabled event rather than just the ↵Justin Clark-Casey (justincc)2012-07-181-11/+2
| | | | | | region name. This saves listeners from having to re-retrieve the scene from their own lists, which won't work anyway if multiple regions with the same name have been allowed
* Fix regression where llGiveInventory() had stopped asking non-owner ↵Justin Clark-Casey (justincc)2012-07-172-9/+14
| | | | | | | | | receivers to accept/decline. This appears to be a regression from back in commit db91044 (Mon Aug 22 2011) where we started to send TaskInventoryOffered msg dialog rather than InventoryOffered dialog. This is probably correct, but failed because the bucket was too large and because we wouldn't have handled the TaskInventoryDeclined option anyway. This patch handles both of these and make llGiveInventoryList() use TaskInventoryOffered as well Fixes http://opensimulator.org/mantis/view.php?id=6089
* Restore update of inventory item on derez/logout. This is necessary to ↵Justin Clark-Casey (justincc)2012-07-171-1/+6
| | | | | | | update the name if this has been changed whilst attached. Note, this behaviour appears to be at variance with the ll grid as of Tues 17 July 2012, testing with viewer 3.2.1. The item name in inventory does not change either at the point of detach or after a relog.
* Stop sending the viewer an inventory create message if a known attachment ↵Justin Clark-Casey (justincc)2012-07-171-4/+1
| | | | | | | item is updated. This doesn't seem to make any sense and probably stems from a period when this code was directly involved in attaching objects directly from the scene. This message is already being sent by InventoryAccessModule code instead.
* When generating a Warp3D texture, set the detailTexture[i] variable on ↵Justin Clark-Casey (justincc)2012-07-141-7/+14
| | | | | | | | resize from the JPEG2000 original rather than only saving it to disk. This appears to be the cause of the warp 3d exception seen when starting a new region for the first time. Subsequent starts were okay because resized saved bitmap was correctly retrieved from disk. Should fix http://opensimulator.org/mantis/view.php?id=5204 and http://opensimulator.org/mantis/view.php?id=5272
* Remove a callstack print out I accidentally left in 2 commits ago in 9ccb578Justin Clark-Casey (justincc)2012-07-131-1/+0
|
* Rather than instantiating a UTF8 encoding everywhere when we want to supress ↵Justin Clark-Casey (justincc)2012-07-131-1/+1
| | | | | | the BOM, use a single Util.UTF8NoBomEncoding. This class is thread-safe (as evidenced by the provision of the system-wide Encoding.UTF8 which does not suppress BOM on output).
* Don't cache regions data on the other unused LocalGridServiceConnector that ↵Justin Clark-Casey (justincc)2012-07-133-17/+25
| | | | | | the module code still sets up even if we're using one directly instantiated from the RemoteGridServiceConnector. Also improves log messages to indicate which regions are sending/receiving various neighbour protocol messages.
* Where possible, use the system Encoding.ASCII and Encoding.UTF8 rather than ↵Justin Clark-Casey (justincc)2012-07-112-3/+1
| | | | | | | constructing fresh copies. The encodings are thread-safe and already used in such a manner in other places. This isn't done where Byte Order Mark output is suppressed, since Encoding.UTF8 is constructed to output the BOM.
* Allow XEngine StartDelay to be configured in the [XEngine] config section.Justin Clark-Casey (justincc)2012-07-111-1/+2
| | | | | This is only currently meant for use by regression tests that don't have any issues if XEngine is started up quickly, since no other operations will be occuring simultaneously. Therefore, this is not yet documented externally.
* Add regression TestDetachScriptedAttachmentToInventory()Justin Clark-Casey (justincc)2012-07-112-20/+127
| | | | This currently only does a relatively crude check for a ScriptState node in the serialized xml
* Add regression TestRezScriptedAttachmentsFromInventory() though this ↵Justin Clark-Casey (justincc)2012-07-111-1/+26
| | | | currently only checks for the presence of script items, not for started scripts
* When an attachment is detached to inv or derezzed, stop the scripts, update ↵Justin Clark-Casey (justincc)2012-07-101-6/+14
| | | | | | the known item with script state still in the script engine and then remove the scripts. This is to fix a regression starting from 5301648 where attachments had to start being deleted before persistence in order to avoid race conditions with hud update threads.
* Do not allow a script to attach a prim if its being sat upon.Justin Clark-Casey (justincc)2012-07-092-1/+40
| | | | | | This prevents a stack overflow where a get position on the avatar will refer to the attachment which will in turn refer back to the avatar. This required recording of all sitting avatars on a prim which is done separately from recording the sit target avatar. Recording HashSet is null if there are no sitting avatars in order to save memory.
* Remove duplicate Warp3DImageModule entry in CoreModulePlugin.addin.xmlJustin Clark-Casey (justincc)2012-07-071-1/+0
| | | | | This was causing 2 copies of the module to be created for each scene. Probably no bad consequences other than a small waste of memory (both for the module and for the warp3D renderer it loaded)
* minor: Make WORLD MAP category log lines consistentJustin Clark-Casey (justincc)2012-07-071-4/+4
|
* minor: Remove some wrong comments in attachments regression testsJustin Clark-Casey (justincc)2012-07-061-2/+0
|
* Add assert to attachment regression tests to check that number of objects in ↵Justin Clark-Casey (justincc)2012-07-061-0/+14
| | | | the scene graph
* refactor: extract method UpdateUserInventoryWithAttachment() from ↵Justin Clark-Casey (justincc)2012-07-061-29/+38
| | | | AttachObject() for better code comprehension