Commit Graph

4624 Commits (25b7d9944d5875e1887eed156f31dd5779761265)

Author SHA1 Message Date
Justin Clarke Casey f3067ce6f9 * Refactor: Change previous commits Object methods to SceneObject methods instead, on the basis that this is less likely to cause confusion with c#'s base object type 2008-05-24 22:45:13 +00:00
Justin Clarke Casey 79eecd3d25 * Refactor: Renaming various *Entity*() methods to *Object*() methods on the basis that they all take SOG parameters to improve code readability for now 2008-05-24 22:10:14 +00:00
Justin Clarke Casey 42693f3b20 * Refactor: Push some dictionary initialization down from Scene into InnerScene 2008-05-24 21:57:00 +00:00
Justin Clarke Casey d53db1d69b * Refactor: Make some inner scene dictionaries internal rather than public 2008-05-24 21:36:27 +00:00
Teravus Ovares cd79be569c * Fixes endless loop in the Land Module when selecting any object.
* Fixes returning objects when the object owner hasn't been in the simulator since the simulator started up last.
2008-05-24 21:13:44 +00:00
Justin Clarke Casey dd4100db4c * Get the xml2 entities serialization representation in the archiver module
* Not yet reusing serialization module - this will happen in the future
* No user functionality yet
2008-05-24 19:21:57 +00:00
Justin Clarke Casey 58e71b8507 * If the SVN build version is not available, state this in the About box explicitly, rather than leaving it out completely and possible engendering confusion 2008-05-24 18:27:57 +00:00
Justin Clarke Casey e5e666bb41 * Bump reported svn trunk revision number up to 0.5.7 2008-05-24 18:21:28 +00:00
Justin Clarke Casey 0b7f82153b * Temporary fix for mantis 1374
* If the agent throttle byte array is unexpectedly empty, then log a warning and drop the packet
2008-05-24 18:17:31 +00:00
Teravus Ovares 375673ec90 This enables return from the parcel object owner display.
There's some oddness with the parcel counts, but if you can get past the oddness, you can return objects under an owner that you have permission to return.
2008-05-24 11:10:21 +00:00
Teravus Ovares 3965fa2ff3 * Implements selected object return.
* If user is in the same sim with you, they'll get an inventory update, if not....  oh well, they'll have to clear their cache potentially before they'll see it.
2008-05-24 09:40:14 +00:00
Teravus Ovares c98fb26789 * an attempt to resolve the teleport + attachment = crash 2008-05-24 03:19:57 +00:00
Dr Scofield b3e413bef7 forgot to actually remove IRCBridgeModule.FindClientRegion() 2008-05-23 16:10:11 +00:00
Dr Scofield 09188d5d10 IRCBridgeModule (and ChatModule before the refactoring) didn't succeed in
finding out which region a new avatar was logging in to; the same problem
occurred when the client/avatar logged out. the reason was mani-fold:

- Scene.AddNewClient(...) would call SubscribeToClientEvents(client)
  which would subscribe to all client events and then call 
  TriggerOnNewClient(...) BEFORE the ScenePresence object had even been
  created and added. i've moved the TriggerOnNewClient() call to the
  end of Scene.AddNewClient()
- Scene.AddNewClient(...) is called with child == true; a later call
  to ScenePresence.MakeRootAgent() will turn child to false. When
  OnNewClient is triggered, child is still true, causing IRCBridgeModule's
  FindClientRegion to ignore the ScenePresence of the new avatar.

i've changed IRCBridgeModule to still use OnNewClient and also OnLogout
and OnConnectionClosed but only to signal that the avatar has logged on
(logged off respectively). to track whether an avatar has actually entered
a region i've added EventManager.OnMakeRootAgent (complementing 
OnMakeChildAgent). 

also, i've cleaned up the internal IRCModule code a bit. currently it 
still uses IClientAPI.SendChatMessage() which replicates the code in
ChatModule, that needs to be changed to use TriggerOnChatFromWorld().
2008-05-23 16:07:47 +00:00
mingchen d04443b4fe *Refactor of the LandManagementModule that allows OpenSim to run without it 2008-05-23 15:12:15 +00:00
Dr Scofield bf23e5d66c i've refactored the ChatModule into two modules: ChatModule and IRCBridgeModule.
ChatModule is now only doing in-world chat. IRCBridgeModule is only doing, well,
bridging chat to/from IRC. Both modules are now using a new OnChatFromWorld event
handler (which Scene.PacketHandler is feeding for chat from in-world instead of 
going via the Interface method). This refactoring will allow us to easily add
other bridge modules (e.g., an XMPP bridge module).

there is still a bug in IRCBridgeModule (inherited from the old ChatModule)
where FindClientRegion does not really find the client region...
2008-05-23 10:24:26 +00:00
Charles Krinke 066b350d20 Thank you kindly, Melanie, for:
Nothing huge, but the new button code for producing 
a new script does well, but the script will not allow 
for name change once created. It reverts back to new script.
2008-05-23 02:45:52 +00:00
Charles Krinke 7dcaa409b3 Thank you kindly, Melanie, for a patch which:
Previously, upload charging was possible only for UPD uploads. 
This is because UDP uploads are charged by the viewer, while in CAPS, 
this was changed to be server side, so hackers couldn't avoid 
paying the upload charge. This patch adds a method to allow 
implementation of this serverside charge.
2008-05-23 01:38:20 +00:00
Justin Clarke Casey 8cde4a1c28 * minor: Remove unused variables causing warnings in Scene 2008-05-22 22:31:42 +00:00
Justin Clarke Casey 0c94da8305 * Plug in stubbed out archiver module 2008-05-22 22:21:58 +00:00
Justin Clarke Casey 4e33906973 * Add (DEPRECATED) to load-xml/save-xml region console help 2008-05-22 21:26:00 +00:00
Sean Dague b27ae0e8dc make VS compile Scene.cs 2008-05-22 20:59:40 +00:00
Sean Dague 1c49752a44 don't trust appearance assetid, instead do an inventory
lookup any time we get it from the server.  This should
preventent unwearable appearance.
2008-05-22 20:07:31 +00:00
MW 811cd3e0bf change to how initial terrain data is sent. Instead of sending the 64 packets in rapid fire as quickly as possible. The terrain data sending is now done in a threadpool worker thread over ~10 seconds with a thread.sleep between each packet sending. this hasn't been tested thoroughly, so it might not actually help with the atom bomb terrain (missing patches) but its a simple thing to revert if it makes things worse for anyone.
10 seconds is roughly the time between the region handshake completing and you being in world where you can see your avatar. So normally the terrain still should have loaded by time you get in the region, although it is possible that sometimes you might see the very end of the terrain load just after you arrive.
2008-05-22 19:44:57 +00:00
Teravus Ovares c124bb58ec * Limiting the Quaternion reset to x=y=z=w=0 2008-05-22 19:09:51 +00:00
Sean Dague 1ebc6bfd0a add a lock on the update, this should have been there before.
still not convinced this will help, but it was wrong.
2008-05-22 18:31:47 +00:00
Sean Dague 36bfa66719 we should be return null in these 2 places, though this won't
help with the timeouts.
2008-05-22 17:55:28 +00:00
Sean Dague fb120e3e23 catch case where avatar might have been child agent 2008-05-22 17:39:13 +00:00
Justin Clarke Casey 401e9bc3b9 * Documentation for load/save xml methods
* Insert the very rough beginning stubs for a save/load OpenSim archive facility that will load/save prim assets (textures & inventory) as well as the prim details themselves 
(our existing xml facilities).
* This won't be ready for even rough testing for quite some time.
* I'm doing this directly in the region server for now since this will be quicker to get something working (hence giving me the Serotonin boost that I need).  However, there are 
very good arguments for later also including it (or moving it entirely) to the separate export executable which Sean stubbed out some time ago.
2008-05-22 17:09:33 +00:00
Dr Scofield a97fa3f43e changing more 'raw' HTTP status codes to OSHttpStatusCodes. 2008-05-22 12:59:42 +00:00
Adam Johnson 9915fa13fb Fix for Mantis 1340. Thanks Melanie! 2008-05-22 12:21:34 +00:00
Adam Johnson 336c761ba0 Mantis 1357 Patch - Thanks mikem! 2008-05-22 12:07:47 +00:00
Dr Scofield bdc792d319 here are further enhancements to the IHttpAgentHandler and to BaseHttpServer (from awebb)
i've added the OSHttpStatusCodes enumeration of HTTP status codes, have adapted 
BaseHttpServer to use those.

then RestPlugin now has proper Failure handling returning proper HTTP status
codes. Regions/POSTHandler is work-in-progress.
2008-05-22 12:00:01 +00:00
Adam Johnson f22a63bd1c Added "show regions" to the CL help screen. Mantis 1123 2008-05-22 08:37:49 +00:00
Adam Johnson 5bfdb8c003 Adding basic show users functionality back in to console. Mantis 1212 2008-05-22 04:55:23 +00:00
Teravus Ovares bdcfc2e322 * Prevent an error from stopping startup when decoding the sculpt mesh j2k fails. 2008-05-22 02:40:19 +00:00
Justin Clarke Casey 61bba6375c * Fix mantis 1325. This is a minor issue where 'show assets' would not work fully in the region console 2008-05-22 00:49:17 +00:00
Justin Clarke Casey 1f57fd4bec * Minor: Tidy ups and logging tweaks. 2008-05-22 00:41:03 +00:00
Justin Clarke Casey 203017f554 * Refactor: Move enhancement of version string with operating system information from Scene to OpenSimMain
* This also means the operating system info will show up in the region console (and hence the logs)
2008-05-22 00:32:04 +00:00
Justin Clarke Casey 2e758172f0 * Fix circular dependency from last checkin by passing version as a parameter to Scene rather than referencing VersionInfo directly
* Butt ugly solution
2008-05-22 00:18:33 +00:00
Justin Clarke Casey 9263f07d70 * Send VersionInfo string instead of the hardcoded Scene string to the "About Second Life" box
* This is the same string as printed out on the opensim region console at startup, so it should now include the svn revision number (if available)
* This dialog box takes an awful long time to come up on my local system - no idea why that is.  However, that also seems to have been the case before this revision.
2008-05-21 23:52:02 +00:00
Justin Clarke Casey cca1563a78 * Deprecate load-xml and save-xml in favour of load-xml2/save-xml2.
* Please file a mantis if you are not able to use load-xml2/save-xml2 but can successfully use load-xml/save-xml
2008-05-21 22:57:29 +00:00
Justin Clarke Casey 42ac35ba7d * Provide relief for mantis 1263, 1202, 679
* If a caller attempts to set PrimitiveBaseShape.ProfileCurve with a HollowShape or ProfileShape component which is not a valid enum, a warning is spat out and a default shape 
subtituted
* This does not solve any underlying problem if we're missing some enum values (though it's not obvious what these are), but it should allow save-xml2/load-xml2 to be used 
without causing invalid enum value related exceptions.  The checks will also guard against badly behaved clients.
* This change alters the order of shape values in the xml, since it appears properties are serialized after fields (at least this is the case in mono).  .net native 
deserialization can cope with this it appears, though people manipulating xml manually may need to adapt (if there are any).
* This may be a good argument against relying on .net [de]serialization for our xml format.
2008-05-21 22:17:28 +00:00
Teravus Ovares c8857daf52 * Going to the C# syntactic sugar way of handling the backup event delegates. 2008-05-21 22:06:38 +00:00
Teravus Ovares 8afd93c943 * Sets backup bool volatile for extra protection against two backup processes running. 2008-05-21 21:47:03 +00:00
Teravus Ovares 5af108a029 * This update causes the backup process to run in a separate thread.
* Concurrency issues are resolved because each object makes a memory-only copy of itself and backs up the copy.
* Because of the way this is done, the latest at the time of the backup gets backed up (no functionality change)
* You can move *thousands of objects at a time* and the sim doesn't freeze and wait for the backup to complete.
* This can be enhanced more by dedicating the thread as opposed to starting it when the backup process starts.
2008-05-21 21:22:56 +00:00
Sean Dague 3e997772ea implement in memory appearance cache for sqlite. This
isn't db backed, but will hang around between reboots.
2008-05-21 20:36:34 +00:00
Sean Dague 9389429ed3 Clean out some crufty in AvatarFactoryModule
Fix RequestUpdateInventoryItem so that asset changes
generate a new asset, which is needed for editing
appearance to do the right thing.  Persistant appearance
seems to work after this, except you need to rebake textures
some times.
2008-05-21 20:18:40 +00:00
Sean Dague 53bcf2139e this removes use of the mapper for wearables, and I can confirm things
get saved to the database.  There are still issues on wearing things
after a cleared cache that I'm looking at now.
2008-05-21 18:02:09 +00:00
Teravus Ovares 0b719286a4 IZ QUATERNION NORMALIZE TO 0? NOWAI! KTHXBYE 2008-05-21 17:29:03 +00:00