aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-08-22Lock disposal of separate gdi+ objects under different threads since this ↵Justin Clark-Casey (justincc)1-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.
2012-08-21Fix bug in SoundModule.PlayAttachedSound() where every sound update to an ↵Justin Clark-Casey (justincc)1-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()
2012-08-20When loading an OAR, validate any group UUIDs and properly reconstruct ↵Justin Clark-Casey (justincc)1-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.
2012-08-20Add --force flag to "kick user" console command to allow bypassing of recent ↵Justin Clark-Casey (justincc)3-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.
2012-08-20Fix scripted detach of temp attachmentsMelanie1-6/+2
2012-08-14As per lindn spec, disable detach and drop for temp attachmentsMelanie1-0/+8
2012-08-14Lay some groundwork for temp attachments. Decouple attachments from inventory.Melanie2-17/+30
2012-08-03Fix old regression that stopped saving parcel owner data in OARs.Justin Clark-Casey (justincc)1-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.
2012-08-03Fix build break.Justin Clark-Casey (justincc)1-1/+1
2012-08-03Update settings loading in AvatarFactoryModule which should have been in ↵Justin Clark-Casey (justincc)1-4/+4
last commit 205f2326
2012-08-03Fix the recent windows compile error by putting newFont for case "R" in ↵Justin Clark-Casey (justincc)1-3/+8
VectorRenderModule inside its own context, rather than disposing of the old font before using it as a prototype for the new.
2012-08-03attempting to fix a build issueSignpostMarv1-2/+2
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-08-03Fixed a rare bug that caused Save OAR to fail because it thought it had ↵Oren Hurvitz1-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.
2012-08-03Delete old blank SOGSpamTestJustin Clark-Casey (justincc)1-37/+0
2012-08-03Properly dispose of all GDI+ entities used in VectorRenderModule for dynamic ↵Justin Clark-Casey (justincc)1-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.
2012-08-02Add simple draw test for the VectorRenderModuleJustin Clark-Casey (justincc)1-0/+75
2012-07-31Fix bug in SoundModule.TriggerSound() where every sound update to an avatar ↵Justin Clark-Casey (justincc)1-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.
2012-07-26When copying items, copy the item description field instead of the asset ↵Justin Clark-Casey (justincc)1-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.
2012-07-25Move Watchdog and MemoryWatchdog classes into OpenSim.Framework.Monitoring ↵Justin Clark-Casey (justincc)2-0/+2
with other monitoring code from OpenSim.Framework
2012-07-25Rename OpenSim.Framework.Statistics to OpenSim.Framework.Monitoring.Justin Clark-Casey (justincc)4-4/+4
This better reflects the long-term purpose of that project and matches Monitoring modules.
2012-07-25Make SceneManager.OnRegionsReadyStatusChange event available.Justin Clark-Casey (justincc)1-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
2012-07-24Remove bad using statement in AttachmentsModuleTests.Justin Clark-Casey (justincc)1-2/+1
It seems that the mono 2.10.8.1 doesn't choke on this but for some reason 2.4.3 fails.
2012-07-24extend regression TestRezScriptedAttachmentFromInventory() to check actual ↵Justin Clark-Casey (justincc)1-3/+19
start of script rather than just the script status reported by SOG.ContainsScripts()
2012-07-24extend regression TestDetachScriptedAttachementToInventory() to check ↵Justin Clark-Casey (justincc)1-3/+25
correct running status on a re-rezzed attachment
2012-07-23Change attachment handling to remove object from the scene first as perMelanie1-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.
2012-07-20BulletSim: add reference to OpenSim.Region.CoreModules in BSScene.cs ↵Robert Adams1-1/+1
attempting to fix a mono compile error.
2012-07-20Correct namespace of BinaryLoggingModule (a cut-and-paste error). Add a ↵Robert Adams2-1/+162
simple, high performance logger for high frequency logging (physics sub-operations, for instance).
2012-07-20Fix the order of operations on detach. The object must always be serializedMelanie1-6/+10
while still in the scene to avoid losing important script state. DeleteSceneObject can not be called before doing this!
2012-07-19Comment out OnIncomingInstantMessage and OnInstantMessage handlers in ↵Justin Clark-Casey (justincc)1-10/+10
GroupsModule, since these led to a private blank method
2012-07-19Add EventManager.OnRegionLoginsStatusChange fired whenever logins are ↵Justin Clark-Casey (justincc)1-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.
2012-07-18Establish EventManager.OnRegionReady event. This will only be triggerred ↵Justin Clark-Casey (justincc)1-8/+2
once when the region is ready. Switch MapImageServiceModule to use this.
2012-07-18Pass entire scene object in OnLoginsEnabled event rather than just the ↵Justin Clark-Casey (justincc)1-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
2012-07-17Fix regression where llGiveInventory() had stopped asking non-owner ↵Justin Clark-Casey (justincc)2-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
2012-07-17Restore update of inventory item on derez/logout. This is necessary to ↵Justin Clark-Casey (justincc)1-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.
2012-07-17Stop sending the viewer an inventory create message if a known attachment ↵Justin Clark-Casey (justincc)1-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.
2012-07-14When generating a Warp3D texture, set the detailTexture[i] variable on ↵Justin Clark-Casey (justincc)1-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
2012-07-13Remove a callstack print out I accidentally left in 2 commits ago in 9ccb578Justin Clark-Casey (justincc)1-1/+0
2012-07-13Rather than instantiating a UTF8 encoding everywhere when we want to supress ↵Justin Clark-Casey (justincc)1-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).
2012-07-13Don't cache regions data on the other unused LocalGridServiceConnector that ↵Justin Clark-Casey (justincc)3-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.
2012-07-11Where possible, use the system Encoding.ASCII and Encoding.UTF8 rather than ↵Justin Clark-Casey (justincc)2-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.
2012-07-11Allow XEngine StartDelay to be configured in the [XEngine] config section.Justin Clark-Casey (justincc)1-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.
2012-07-11Add regression TestDetachScriptedAttachmentToInventory()Justin Clark-Casey (justincc)2-20/+127
This currently only does a relatively crude check for a ScriptState node in the serialized xml
2012-07-11Add regression TestRezScriptedAttachmentsFromInventory() though this ↵Justin Clark-Casey (justincc)1-1/+26
currently only checks for the presence of script items, not for started scripts
2012-07-10When an attachment is detached to inv or derezzed, stop the scripts, update ↵Justin Clark-Casey (justincc)1-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.
2012-07-09Do not allow a script to attach a prim if its being sat upon.Justin Clark-Casey (justincc)2-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.
2012-07-07Remove duplicate Warp3DImageModule entry in CoreModulePlugin.addin.xmlJustin Clark-Casey (justincc)1-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)
2012-07-07minor: Make WORLD MAP category log lines consistentJustin Clark-Casey (justincc)1-4/+4
2012-07-06minor: Remove some wrong comments in attachments regression testsJustin Clark-Casey (justincc)1-2/+0
2012-07-06Add assert to attachment regression tests to check that number of objects in ↵Justin Clark-Casey (justincc)1-0/+14
the scene graph
2012-07-06refactor: extract method UpdateUserInventoryWithAttachment() from ↵Justin Clark-Casey (justincc)1-29/+38
AttachObject() for better code comprehension