Commit Graph

18163 Commits (a49447832ee49ea6252ea2ffed1ac9660738c3c5)

Author SHA1 Message Date
Justin Clark-Casey (justincc) a49447832e minor: Make SOP.UpdateOffset() more consistent by checking against the same old OffsetPosition rather than one which may vary if it simultaneously changes. 2013-04-03 00:29:48 +01:00
Justin Clark-Casey (justincc) 86bdc4eca4 Fix minor race condition where SOP.GetGeometricCenter() and GetCenterOfMass() could return results which were never the case if these values were changed whilst the method was running
No need to create new Vector3s since these are structs.
2013-04-03 00:29:43 +01:00
Justin Clark-Casey (justincc) d71b097396 Bring AttachmentsModule on 0.7.4-extended mostly up to equivalent level of git master 3611d33b00 2013-04-02 23:32:45 +01:00
Justin Clark-Casey (justincc) d25d36ec33 Use Output instead of OutputFormat in appropriate places of XEngine status reporting. 2013-04-02 23:11:49 +01:00
Justin Clark-Casey (justincc) 92cedc083f Add Location (relative), Rotation (Relative) and Rotation (World) to "show part" and other related console commands 2013-04-02 23:11:34 +01:00
Justin Clark-Casey (justincc) edfcec5041 minor: comment out unused Scene.AgentCrossing() to reduce code complexity 2013-04-02 22:47:53 +01:00
Justin Clark-Casey (justincc) 15c79a3f16 minor: Only try to deregister stats in EntityTransferModule.RemoveRegion() if module was enabled. 2013-04-02 22:47:31 +01:00
Justin Clark-Casey (justincc) 0d67aa23d5 Add "show eq" console command to show numbers of messages in agent event queues.
For debugging purposes.
2013-04-02 22:47:17 +01:00
Justin Clark-Casey (justincc) 44434e8200 Add admin_get_agents xmlrpc method.
This allows one to retrieve information about agents from a particular region (name, id, position, etc.)
Similar to output from "show users"
See http://opensimulator.org/wiki/Remoteadmin:admin_get_agents for more details
2013-04-02 22:36:03 +01:00
Justin Clark-Casey (justincc) 0f569d2359 Start recording inter-region teleport attempts, aborts, cancels and failures in statistics for monitoring/debugging purposes
These are recorded as 'entitytransfer' stats as seen by the "show stats entitytransfer" console command.
2013-04-02 22:32:30 +01:00
Justin Clark-Casey (justincc) f6a0294bbc Add "show borders" command to show the borders of a region.
This is relevant to mega-regions where the borders are very different to a regular region.
Also adds some method doc and other code comments.
2013-04-02 22:32:19 +01:00
Justin Clark-Casey (justincc) fa4ea2db17 Following on from 476a7d3e (which wasn't enough), make chat across regions on different simulators work.
Also resolves an issue of multiple chatting if the originating simulators had more than one region and they were neighbours
2013-04-02 22:32:13 +01:00
Justin Clark-Casey (justincc) 0fa04289d5 Take out a testing sleep I accidentally left in the teleport code from last commit 7471bc7 2013-04-02 22:32:08 +01:00
Justin Clark-Casey (justincc) debc266e75 At strategic points in the teleport process, if the client has simultaneously logged out then do not continue.
This aims to reduce any side effects if the process tries to complete after the client has logged back in (e.g. it was delayed due to a slow destination region response).
This introduces a new Aborting entity transfer state which signals that the teleport should be stopped but no compensating actions performed.
2013-04-02 22:32:01 +01:00
Justin Clark-Casey (justincc) b87c5140a1 Implement chat across region borders since we can tell if avatars in neighbouring regions are in range. 2013-04-02 22:31:56 +01:00
Justin Clark-Casey (justincc) 6f0cab8538 minor: On teleport, signal a child agent before we send the viewer TeleportFinish in order to avoid a theoretical race condition when teleporting to a neighbour.
If we do this after TeleportFinish, then it's possible for a neighbour destination to request the source to create a child agent whilst its still treated as root.
This closes the original presence which we don't really want to do.
This is probably okay (albeit with warnings on the console) but afaics there's no reason not to move the child agent signal.
2013-04-02 22:31:50 +01:00
Justin Clark-Casey (justincc) f57e29372b On a teleport, lock m_agentsInTransit whilst we grab the value to check for completion just to be sure we're not using a thread cached version. 2013-04-02 22:31:44 +01:00
Justin Clark-Casey (justincc) e185ed6e69 minor: disable logging on regression TestCrossOnSameSimulator() that I accidentally left on a few commits ago. 2013-04-02 22:31:40 +01:00
Justin Clark-Casey (justincc) 27d5a3ce35 Fix regression test which needs slightly different setup on 0.7.4-extended 2013-04-02 22:31:01 +01:00
Justin Clark-Casey (justincc) 78ae1d34ec Add file missing from last commit 36651be 2013-04-02 22:15:37 +01:00
Justin Clark-Casey (justincc) 44ca6c01ea On the later forms of teleport failure, tell the user if this was because viewer couldn't/didn't connect with destination or if destination didn't signal teleport completion.
Also adds regression test for the case where the viewer couldn't connect with the destination region.
Also refactoring of regression test support code associated with entity transfer in order to make this test possible and the code less obscure.
2013-04-02 22:15:27 +01:00
Justin Clark-Casey (justincc) 9dd7fb8142 Fix "show attachments" command probably broken in commit addab12 (Wed Jan 2 21:38:00 2013)
This break was not connected with the recent attachment code changes.
2013-04-02 22:11:04 +01:00
Justin Clark-Casey (justincc) e50b27047d Force a viewer object update for attachments at the end of the final Scene.CompleteMovement() in order to make all multi-attachments appear on the destination region.
For some reason, sending updates before this will not have this effect.
This may be something related to some viewers (e.g. LL 3.3.4) or something OpenSimulator isn't getting quite right.
2013-04-02 22:10:57 +01:00
Robert Adams 67ffb085e1 For the moment, disable the output of the 'scene' statistics in SimExtraStatsCollector
and thus for the command 'show stats' because it is ugly and most of the information
is already output in the formatted printout that appears before.
2013-04-02 22:10:30 +01:00
Justin Clark-Casey (justincc) 38767d5984 Finally remove the 'REST' ApplicationPlugins code which has been non-functional and largely commented out for many years. 2013-04-02 22:09:08 +01:00
Melanie fbb738a627 Make the LSL memory functions virtual so script engines can override them if they have different memory management. 2013-04-02 22:08:58 +01:00
Justin Clark-Casey (justincc) 95cdaf81a3 refactor: Reuse Get() method in AssetService to eliminate some copy/paste in other Get methods 2013-04-02 22:08:48 +01:00
Justin Clark-Casey (justincc) 2e9c57f644 Fix bug in AssetService where requesting data only for an asset would throw an exception if the asset did not exist. 2013-04-02 22:08:40 +01:00
Justin Clark-Casey (justincc) eafcc6f2b2 minor: log an error rather than info if a connector fails to load. 2013-04-02 22:08:34 +01:00
Robert Adams f8067f02fe Fix server statistics always reporting zero for total network bytes in/out.
Clean up some parameter code in Statistics.Binary.
2013-04-02 22:08:10 +01:00
Justin Clark-Casey (justincc) 515324a1aa refactor: make llGetLinkName() and llGetLinkKey() use a common GetLinkEntity() method 2013-04-02 22:08:02 +01:00
Justin Clark-Casey (justincc) cc24ba3a91 Fix llGetLinkKey() to return the last sat avatar as the last link number.
As per http://wiki.secondlife.com/wiki/LlGetLinkKey
This is done by keeping a scene-object wide list of sitters.
This also fixes bugs in this function where linknums 0 and 1 weren't treated properly if there were sitting avatars on a single prim.
This also fixes a minor race condition for multiple concurrent sitters on a prim with no current sitters by locking on the object-wide list rather than individual sop lists
Addresses http://opensimulator.org/mantis/view.php?id=6477
2013-04-02 22:04:34 +01:00
Justin Clark-Casey (justincc) 556817e279 minor: remove mono compiler warnings in LSL_Api.cs 2013-04-02 21:57:44 +01:00
Justin Clark-Casey (justincc) 2a81f4db2e Log same environment information to Robust log as is already done for simulator logs, for debug purposes 2013-04-02 21:57:39 +01:00
Justin Clark-Casey (justincc) 3098ad4ab9 refactor: minor cleanup in osGetAvatarList() 2013-04-02 21:57:33 +01:00
Justin Clark-Casey (justincc) 9f1aac82b2 Fix bug in osCauseHealing() if called with an avatar ID for an avatar that is not in the scene. 2013-04-02 21:57:29 +01:00
Justin Clark-Casey (justincc) 60060e7be9 minor: Use more compact libomv primitive constructors in osNpcGetPos() and osNpcGetRot() 2013-04-02 21:57:24 +01:00
Justin Clark-Casey (justincc) 785abe070d Fix minor race conditions in OSSL_Api functions where a parcel could be misidentified for moving prims. 2013-04-02 21:57:20 +01:00
Justin Clark-Casey (justincc) 5526177c32 refactor: Use LSL_Vector(Vector3) constructor in llCastRay() 2013-04-02 21:57:14 +01:00
Justin Clark-Casey (justincc) cbb4086e82 refactor: Use ILandChannel.GetLandObject(Vector3) in LSL_Api rather than having to continually take intermediate Vector3s to avoid race conditions 2013-04-02 21:57:10 +01:00
Justin Clark-Casey (justincc) 6804549428 Add ILandChannel.GetLandObject(Vector3 position) as this is a very common input to GetLandObject()
This conforms to the existing ILandChannel.ParcelsNearPoint() method
2013-04-02 21:57:06 +01:00
Justin Clark-Casey (justincc) cf52e8072c Fix minor race condition in llGetCameraRot() where inconsistent information could be returned for a rotating camera 2013-04-02 21:57:01 +01:00
Justin Clark-Casey (justincc) ac063b4681 Fix minor race condition in llGetCameraPos() where an inconsistent post could be returned for a moving camera 2013-04-02 21:56:56 +01:00
Justin Clark-Casey (justincc) eb29597c6e Fix minor race condition in llParcelMediaCommandList() where a parcel could be misidentified for a moving prim 2013-04-02 21:56:51 +01:00
Justin Clark-Casey (justincc) a935440513 Fix minor race conditions in LSL_Api.GetPrimParams() for PRIM_POSITION, PRIM_SIZE and PRIM_ROT_LOCAL
This function is used by all the various ll*Params() and os*Params() functions
2013-04-02 21:56:44 +01:00
Justin Clark-Casey (justincc) b9d4266400 Fix minor race condition in llGetGeometricCenter() if this was changing whilst the function was called. 2013-04-02 21:56:39 +01:00
Justin Clark-Casey (justincc) 3b13dd56cd refactor: use LSL_Rotation(Quaternion) constructor in lLGetRootRotation() 2013-04-02 21:56:34 +01:00
Justin Clark-Casey (justincc) 213f0e3a12 Fix minor race condition in llGetRootPosition() where inconsistent results could be returned for moving prims 2013-04-02 21:56:29 +01:00
Justin Clark-Casey (justincc) 75c169ffe5 Fix minor race conditions in detecting current parcel for llAddToLandPassList(), llSetParcelMusicURL() and llGetParcelMusicURL() for moving prims 2013-04-02 21:56:23 +01:00
Justin Clark-Casey (justincc) 1c12697232 refactor: use LSL_Vector(Vector3) constructor in llGroundNormal() 2013-04-02 21:56:19 +01:00