dahlia
5d3723a47f
update PrimMesher.cs to dll version r72 which fixes some path errors in sliced linear prims. Addresses Mantis #6085
2012-07-13 21:22:15 -07:00
SignpostMarv
84b7ae2573
acting on feedback from justincc
2012-07-14 01:45:34 +01:00
SignpostMarv
423101b425
acting on feedback from justincc
2012-07-14 01:45:34 +01:00
SignpostMarv
e3453dd9ca
added in some extra variables, it sometimes thinks it is on the same parcel :(
...
Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-14 01:45:34 +01:00
SignpostMarv
b6cd3b625e
adding workaround for silent failure if position is outside the bounds of a region, implementing parcel prim count check.
...
Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-14 01:45:34 +01:00
SignpostMarv
8d59385eea
Implementation of llSetRegionPos(). Does not implement failure on object entry/prim limit/access restrictions.
...
Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-14 01:45:34 +01:00
Justin Clark-Casey (justincc)
ec6a195e40
When generating a Warp3D texture, set the detailTexture[i] variable on 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-14 01:11:30 +01:00
Justin Clark-Casey (justincc)
2954ceccae
Remove a callstack print out I accidentally left in 2 commits ago in 9ccb578
2012-07-13 01:08:49 +01:00
Justin Clark-Casey (justincc)
884d603cac
Rather than instantiating a UTF8 encoding everywhere when we want to supress 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-13 01:03:28 +01:00
Justin Clark-Casey (justincc)
9ccb578721
Don't cache regions data on the other unused LocalGridServiceConnector that 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-13 00:44:00 +01:00
Justin Clark-Casey (justincc)
d6f54b25cd
Stop redundantly passing in the endpoint to the LLClientView constructor.
...
This can always be retrieved via the LLUDPClient and is so done in various places already.
2012-07-12 23:48:42 +01:00
Justin Clark-Casey (justincc)
dda999a22c
Remove IClientIPEndpoint client interface for now.
...
This may well come back in the future when this subinterface is actually used but it currently isn't and I feel the name was poor.
Everything uses IClientAPI.RemoveEndPoint which also returned the full endpoint rather than just the ip address.
2012-07-12 23:43:02 +01:00
Justin Clark-Casey (justincc)
3b3d9967b1
Remove IClientAPI.GetClientEP() in favour of existing identical IClientAPI.RemoteEndpoint.
2012-07-12 23:29:57 +01:00
Justin Clark-Casey (justincc)
75ab9b4b88
Change very recent AllowedViewerList and BannedViewerList config setting names in OpenSim.ini.example to AllowedClients and BannedClients to match long-existing settings in [LoginService]
...
Also changes separator from comma to bar to match existing [LoginService] config features.
Divergence of config names for identical facilities in different places makes for an unnecessarily confusing user experience.
2012-07-12 23:18:30 +01:00
Justin Clark-Casey (justincc)
15283d35f1
Extend "show circuits" to show circuit code, ip and viewer name.
...
Also change to use standard table formatting
"show circuits" and "show connections" console commands are very similar but access different data structures.
2012-07-12 23:09:36 +01:00
Justin Clark-Casey (justincc)
6a0de355e0
Add active status to "show connections"
2012-07-12 22:37:48 +01:00
Justin Clark-Casey (justincc)
65a25ee510
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-07-12 22:35:38 +01:00
Justin Clark-Casey (justincc)
ca412032e8
Put output for "show connections" command into standard table format.
...
Also moves into own method.
2012-07-12 21:36:33 +01:00
Robert Adams
743437262e
Many explanitory comments added to the link and delink code in
...
SOG and SOP. Should have no functionality changes.
2012-07-11 16:12:38 -07:00
Justin Clark-Casey (justincc)
916e3bf886
Where possible, use the system Encoding.ASCII and Encoding.UTF8 rather than 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-11 22:54:22 +01:00
Justin Clark-Casey (justincc)
33cff9b9d7
Allow XEngine StartDelay to be configured in the [XEngine] config section.
...
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-11 21:55:18 +01:00
Justin Clark-Casey (justincc)
0e611c47d3
Remove WorldComm module from the regression TestCompileAndStartScript() since the infrastructure no longer fails if this module isn't present, at least on the tested codepaths
2012-07-11 21:46:46 +01:00
Justin Clark-Casey (justincc)
fc24563206
Add regression TestDetachScriptedAttachmentToInventory()
...
This currently only does a relatively crude check for a ScriptState node in the serialized xml
2012-07-11 21:43:35 +01:00
Justin Clark-Casey (justincc)
14d05dc2a9
Add regression TestRezScriptedAttachmentsFromInventory() though this currently only checks for the presence of script items, not for started scripts
2012-07-11 19:54:40 +01:00
Justin Clark-Casey (justincc)
337ea019bd
If a part has a sit target and an avatar is already sitting, allow another avatar to sit in the position given if no sit target was set.
...
Previous behave was that the second avatar could not sit.
This matches behaviour observed on the LL grid.
2012-07-10 23:55:22 +01:00
Justin Clark-Casey (justincc)
cdea572d2e
refactor: move management of SOP.SitTargetAvatar into SOP.AddSittingAvatar() and SOP.RemoveSittingAvatar()
2012-07-10 23:50:04 +01:00
Justin Clark-Casey (justincc)
11e0ad6dc8
Revert "refactor: Add SOP.IsSitTargetOccupied to improve readability"
...
This reverts commit c8f0d476d2
.
On reconsideration, I think this is less readable since immediately following code still sets SitTargetAvatar directly
2012-07-10 23:39:05 +01:00
Justin Clark-Casey (justincc)
c8f0d476d2
refactor: Add SOP.IsSitTargetOccupied to improve readability
2012-07-10 23:34:40 +01:00
Justin Clark-Casey (justincc)
69a6f6e3cd
refactor: use sit orientation argument passed in to SP.SendSitResponse() rather than creating a new copy
...
There are no issues with side-effects since this is a struct.
2012-07-10 23:26:40 +01:00
Justin Clark-Casey (justincc)
e8347b7095
Move common code to detect whether a part has a valid sit target into a SOP property rather than being repeated in SP.
...
This also makes the detection in SP.FindNextAvailableSitTarget() and SendSitResponse() identical.
Previously they varied slightly (SendSitResponse didn't check for an older type of invalid quaternion) but the practical effect is most probably zero.
2012-07-10 23:21:39 +01:00
Justin Clark-Casey (justincc)
506437b684
Remove log line accidentally left in SP.SendSitResponse()
2012-07-10 23:06:34 +01:00
Justin Clark-Casey (justincc)
9f01c3d408
Disable logging in regression test in OSSL_ApiAttachmentTests
2012-07-10 23:04:44 +01:00
Justin Clark-Casey (justincc)
58869e5aa0
Fix recent SOP.GetSittingAvatars() to return null if there are no sitting avatars rather than throwing an exception.
...
Extends sitting avatar regression tests to test new sitters information
2012-07-10 23:03:52 +01:00
Justin Clark-Casey (justincc)
f3134b5cf6
When an attachment is detached to inv or derezzed, stop the scripts, update 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-10 22:41:11 +01:00
Justin Clark-Casey (justincc)
eb5ec4a786
If a script is being stopped manually, then give the scriptpool thread 1 second to finish normally before forcibly aborting.
...
This is to avoid the worst of the problems in mono 2.6, 2.10 where an aborted thread does not always release all its locks.
This very short grace period is identical to the existing behaviour when a script is removed from the scene.
2012-07-10 21:42:51 +01:00
Justin Clark-Casey (justincc)
c8af20f966
This script allows an object to be attached directly from prim inventory to another avatar in the scene.
...
Very useful in serious game/environment scenarios where its only allowed for trusted creators.
Threat level Severe
2012-07-09 23:08:41 +01:00
Justin Clark-Casey (justincc)
d6f563794e
Don't allow a prim to be sat upon if its part of an attachment
2012-07-09 21:43:44 +01:00
Justin Clark-Casey (justincc)
2eaa6d5ace
Do not allow a script to attach a prim if its being sat upon.
...
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-09 21:24:32 +01:00
Justin Clark-Casey (justincc)
112cddc9ca
minor: rearrange INITIALIZATION COMPLETE log message so that it's clear init is only complete for a particular region at a time
2012-07-07 00:53:17 +01:00
Justin Clark-Casey (justincc)
16d5b79d57
minor: remove some recent mono compiler warnings
2012-07-07 00:36:01 +01:00
Justin Clark-Casey (justincc)
1201307c73
Remove duplicate Warp3DImageModule entry in CoreModulePlugin.addin.xml
...
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-07 00:26:25 +01:00
Justin Clark-Casey (justincc)
a85741ac37
minor: Make WORLD MAP category log lines consistent
2012-07-07 00:14:16 +01:00
Justin Clark-Casey (justincc)
3bd134474b
minor: Get RegionReady module to shout initialization complete status to draw the eye
2012-07-07 00:09:33 +01:00
Justin Clark-Casey (justincc)
b19ead5f9e
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-07-07 00:05:16 +01:00
Justin Clark-Casey (justincc)
7ff4eec79c
Remove redundant SetScene() function in Scene.AddSceneObject()
...
This is always done later on in SceneGraph.AddSceneObject() if the call hasn't failed due to sanity checks.
There's no other purpose for this method to exist and it's dangerous/pointless to call in other conditions.
2012-07-07 00:02:45 +01:00
Robert Adams
7aff238eee
Merge branch 'bulletsim2'
...
Cleanup preceeding major work. No major functional changes.
Collisions reported to simulator more efficiently.
BulletSim binaries updated using a more recent version of Bullet (v2.80-r2527).
2012-07-06 15:59:09 -07:00
Justin Clark-Casey (justincc)
f1f390cfdf
Remove now duplicate interregion object check that should have been removed a few commits ago in 43a2da9
2012-07-06 23:22:40 +01:00
Justin Clark-Casey (justincc)
74014a3854
minor: Remove some wrong comments in attachments regression tests
2012-07-06 23:13:00 +01:00
Robert Adams
e4a6611865
Clean up collision reporting code so they are properly passed to
...
the simulator in batches.
More comments.
2012-07-06 15:09:19 -07:00
Justin Clark-Casey (justincc)
056c9a59b2
Add assert to attachment regression tests to check that number of objects in the scene graph
2012-07-06 23:07:50 +01:00
Talun
ae1f2114f5
Mantis 6077 trim NPC chat on channel zero.
...
This patch trims leading and trailing spaces from NPC chat and
suppresses the sending of empty chat strings on open chat channel 0.
2012-07-06 22:49:18 +01:00
Talun
1b1f841c6a
Mantis 6063 osNpcTouch.
...
Allow NPCS to touch obects.
2012-07-06 22:37:19 +01:00
Justin Clark-Casey (justincc)
43a2da9edb
Pull prim crossing/teleport checks up into Scene.IncomingCreateObject() from Scene.AddObject()
...
Only IncomingCreateObject() needs these checks. General object adding does not need to perform crossing perm checks
2012-07-06 22:33:16 +01:00
Justin Clark-Casey (justincc)
f6e5791ecd
refactor: extract method UpdateUserInventoryWithAttachment() from AttachObject() for better code comprehension
2012-07-06 22:07:19 +01:00
Justin Clark-Casey (justincc)
843112340e
Log MONO_THREADS_PER_CPU value on simulator startup, or "unset" if it is not set
2012-07-06 00:37:45 +01:00
Justin Clark-Casey (justincc)
7e73f609e5
Log warning if time between invocations of the watchdog thread is twice the timer setting.
...
This is to help detect situations where thread timeout warnings are being generated because of general machine issues rather than deadlock, network or other problems.
2012-07-05 23:15:59 +01:00
Justin Clark-Casey (justincc)
db9616f7ba
minor: add client name to various login service log messages to disambiguate messages from concurrent logins. Also adds destination resolution debug log message showing region endpoint.
...
Adding endpoint to the log helps to find issues where the region external host information has been wrongly configured
2012-07-05 21:30:20 +01:00
Justin Clark-Casey (justincc)
8674604ff5
regrade osFormatString, osMatchString and osReplaceString to VeryLow.
...
I can't see that these present any real hazard to sim functioning.
2012-07-05 21:10:59 +01:00
SignpostMarv
510e809aba
porting console commands from raw2sculpt 3.2
2012-07-05 00:16:31 +01:00
Justin Clark-Casey (justincc)
951b45b80f
Add OSSL function osForceAttachToAvatarFromInventory()
...
This works like osForceAttachToAvatar() but allows an object to be directly specified from the script object's inventory rather than forcing it to be rezzed in the scene first.
Still only attaches objects to the owner of the script.
This allows one to bypass the complicated co-ordination of first rezzing objects in the scene before attaching them.
Threat level high.
2012-07-05 00:05:06 +01:00
Justin Clark-Casey (justincc)
7b327848d0
Use GetInventoryItem() in llRezAtRoot rather than iterating through a cloned dictionary
2012-07-04 22:21:47 +01:00
Justin Clark-Casey (justincc)
2f998fce1f
refactor: In llGetNotecardLine() use existing GetInventoryItem() rather than inspecting a clone of the TaskInventory dictionary that was not cloned thread-safe
2012-07-04 22:00:39 +01:00
Justin Clark-Casey (justincc)
1816ecb747
refactor: In llGetNumberOfNotecardLines() use existing GetInventoryItem() rather than inspecting a clone of the TaskInventory dictionary that was not cloned thread-safe
2012-07-04 21:57:57 +01:00
Justin Clark-Casey (justincc)
eacba4fc0b
refactor: use existing GetInventoryItem() in GetScriptByName(), itself renamed from ScriptByName()
2012-07-04 21:54:30 +01:00
Justin Clark-Casey (justincc)
9fac7fd932
refactor: In llGetInventoryType() use existing GetInventoryItem()
2012-07-04 21:50:52 +01:00
Justin Clark-Casey (justincc)
f2b0377c28
refactor: In llGetInventoryCreator() use existing GetInventoryItem()
2012-07-04 21:49:21 +01:00
Justin Clark-Casey (justincc)
d933bdbd59
refactor: In llGetInventoryPermMask() use existing GetInventoryItem()
2012-07-04 21:47:20 +01:00
Justin Clark-Casey (justincc)
f9fa34408d
refactor: in llGetInventoryPermMask use existing GetInventoryItem()
2012-07-04 21:42:04 +01:00
Justin Clark-Casey (justincc)
857494f6bd
refactor: In llRemoteLoadScriptPin() use existing GetInventoryItem()
2012-07-04 21:36:44 +01:00
Justin Clark-Casey (justincc)
dff7cae2ee
refactor: replace use of LSL_Api.GetTaskInventoryItem() with existing GetInventoryItem()
2012-07-04 21:33:35 +01:00
Justin Clark-Casey (justincc)
0e3fce9b5c
refactor: In llGetInventoryKey() use existing GetInventoryItem()
2012-07-04 21:25:58 +01:00
Justin Clark-Casey (justincc)
4b2b14dad1
In llMessageLinked() use GetInventoryItems() rather than cloning TaskInventory directory
...
GetInventoryItems() returns a new list and so is equivalent, and creates this list under lock whereas Clone() is not thread-safe
2012-07-04 21:22:43 +01:00
Justin Clark-Casey (justincc)
3769739ca7
In llRequestInventoryData() use GetInventoryItems() rather than cloning TaskInventory directory
...
GetInventoryItems() returns a new list and so is equivalent, and creates this list under lock whereas Clone() is not thread-safe
2012-07-04 21:19:16 +01:00
Justin Clark-Casey (justincc)
3717812ce0
refactor: In llCollisionSound() use existing GetInventoryItem() method rather than have it iterate through TaskInventory itself.
2012-07-04 21:15:00 +01:00
Justin Clark-Casey (justincc)
ae64d089c6
refactor: In llRemoveInventory() use existing GetInventoryItem() method rather than have it iterate through TaskInventory itself.
2012-07-04 21:05:51 +01:00
Justin Clark-Casey (justincc)
58b13d51a7
refactor: make llGiveInventory() use existing GetInventoryItem() method rather than iterate through TaskInventory itself.
2012-07-04 20:57:48 +01:00
Justin Clark-Casey (justincc)
5691a8b860
refactor: rename Watchdog.WATCHDOG_TIMEOUT_MS to DEFAULT_WATCHDOG_TIMEOUT_MS to reflect what it actually is
2012-07-04 00:15:03 +01:00
Justin Clark-Casey (justincc)
f7b4802577
Correct spelling mistake m_BanedViewers to m_BannedViewers
2012-07-03 23:26:02 +01:00
Justin Clark-Casey (justincc)
8183c2926d
minor: Add some method doc to HasGroupChanged and Schedule GroupForFull/PartUpdate() to indicate when region modules need to invoke them
2012-07-03 23:19:11 +01:00
Justin Clark-Casey (justincc)
3c9b9a848f
Fix issue in database tests where sogs being stored are not in a scene.
...
This puts an extra m_part.ParentGroup.Scene == null check at the top of SceneObjectPartInventory.QueryScriptStates()
2012-07-03 22:58:58 +01:00
Michelle Argus
3399596e0e
Adds a list of viewers that are allowed or banned from the region.
...
Signed-off-by: Melanie <melanie@t-data.com>
2012-07-02 18:45:11 +01:00
Melanie
d32cf21576
Add preservation of running state of scripts when drag-copying.
2012-07-01 18:30:59 +01:00
Justin Clark-Casey (justincc)
1926de5a05
Remove some mono compiler warnings
2012-06-30 01:25:39 +01:00
Justin Clark-Casey (justincc)
a4551b027b
Removing unused handling of incoming create object by userID and itemID only.
...
It appears this was never actually used since attachments were rezzed in other code.
This was never available on remote simulator comms, only local.
2012-06-30 01:14:49 +01:00
Justin Clark-Casey (justincc)
56c776066c
Remove code listed for removal in 0.7.3 that handled script restart for incoming attachments from pre-fatpack regions (versions of OpenSimulator more than a year old)
2012-06-30 01:06:37 +01:00
Justin Clark-Casey (justincc)
0229e90dcc
Move update of the final optional ODE total frame stat inside the OdeLock rather than outside to avoid a very occasional race condition with the stat collection thread
2012-06-29 01:02:35 +01:00
Justin Clark-Casey (justincc)
e420f815dc
refactor: rename _collisionEventPrim to m_collisionEventActors and _collisionEventPrimChanges to m_collisionEventActorsChanges to reflect their actual contents.
...
These dictionaries handle all actor types, not just physical prims.
2012-06-29 00:54:40 +01:00
Justin Clark-Casey (justincc)
1a7be7b00e
Fix a regression where we stopped removing avatars from collision event reporting on logout, rather than stopping clearing their collision events.
...
This occurred in b18c8c8
(Thu May 17 2012).
This was a cause of very occasional race conditions and likely memory leakage as clients came and went from the region.
2012-06-29 00:36:50 +01:00
Justin Clark-Casey (justincc)
0f6b7b6a41
If a link points to a non-existing item in FetchInventory caps, then don't try to add it to the return data rather than suffering an exception later on
2012-06-29 00:11:44 +01:00
Justin Clark-Casey (justincc)
f202c36106
Add IScene.Name for code clarity to replace the RegionInfo.RegionName used in many, many log messages.
2012-06-29 00:03:22 +01:00
Justin Clark-Casey (justincc)
bfa6896678
Change AttachmentsModule.DetachSingleAttachmentToInv() to accept a SOG directly instead of an item ID to then shuffle through attachments, saving CPU busywork.
...
Almost all callers already had the sog to hand.
Still checking that it's really an attachment, but now by inspecting SOG.AttachedAvatar
2012-06-28 23:31:23 +01:00
Justin Clark-Casey (justincc)
571fd966cb
Rather than iterating through all SOGs in the scene looking for the one that matches out fromItemID on detach, go through the agent's attachment sog list instead.
2012-06-28 23:01:12 +01:00
Justin Clark-Casey (justincc)
f263d6a910
Remove code that tried to delete an attachment back to inventory if RezSingleAttachmentFromInventoryInternal() returned null.
...
null would only ever be returned if the item couldn't be located within inventory and this would happen immediately.
In this case, derezzing wouldn't work anyway since there is no item to derez.
2012-06-28 22:48:49 +01:00
Justin Clark-Casey (justincc)
972b0b52f9
If rest of first line after colon is blank then still warn about running in XEngine if engine specified does not exist.
...
This is to take account of situations where the user was intending to specify a script engine using colon using its default language.
This probably generates few false positive as scripts are less likely to end a first line colon with a comment for other purposes.
2012-06-28 21:30:36 +01:00
Justin Clark-Casey (justincc)
25baa2d894
Avoid reporting false positives when a colon is in a comment in the first line of a script where the user was not trying to select a different script engine.
...
This works by only posting the "Selected engine unavailable" message if we're falling back on XEngine and the language is one handled by XEngine.
In cases where the language is not handled or not allowed, the user will still be notified by the later compiler error.
This avoids the overwhelming majority of false positives where the first line contains a : for other reasons (e.g. source control systems, vim settings, etc.)
Ultimately, I think it would be better to detect script language/engine with a mechanism that didn't just rely on : detection (e.g like #! in unix scripts).
2012-06-28 01:01:18 +01:00
Justin Clark-Casey (justincc)
f9769a9fcb
minor: reuse colon index calculation in XEngine.OnRezScript. The index if a colon is found on the first line will always be the same as for the whole script.
2012-06-28 00:37:23 +01:00
Justin Clark-Casey (justincc)
bb48060b44
Fix issue in InventoryArchiveTestCase where it didn't call down to OpenSimTestCase.SetUp()
2012-06-27 00:50:36 +01:00
Justin Clark-Casey (justincc)
d043213317
refactor: Move ScenePresence <-> AgentData attachments copying code into AttachmentsModule.
2012-06-27 00:41:46 +01:00
Justin Clark-Casey (justincc)
5bec5bcf71
Automatically disable log4net before each regression test so that logging is confined to a single test if it's turned on.
...
This involves making test classes inherit from a common OpenSimTestCase.
This will be applied to more classes as required.
2012-06-27 00:01:51 +01:00
Justin Clark-Casey (justincc)
87ca820f9b
Replace "kill uuid" console command with the more consistent "delete object uuid", which was present in the last opensim release.
2012-06-26 23:28:48 +01:00