Commit Graph

100 Commits

Author SHA1 Message Date
Jeff Ames
be2ad79e52 Added patch from Johan. First attempt to solve the LibSL.Packet GC problem. Works with LibSL rev>1532 2007-12-20 05:43:02 +00:00
Jeff Ames
6702b03733 Misc. cleanup:
* added Util.Clip(value, min, max)
* modified asset cache's numPackets calculation to use max packet size (600) instead of 1000
* removed a few magic numbers
2007-12-19 08:44:25 +00:00
Teravus Ovares
ccc8ffaaec * Added Incomplete Handling of the RegionInfoRequest packet
* Added Incomplete Handling of the EstateCovenantRequest packet 
* Added Incomplete Handling of the EstateOwnerMessageRequest.ChangeEstateCovenantid method
* Fixed a race condition with avatar animations
2007-12-18 12:08:34 +00:00
Teravus Ovares
afe63faa2e * Fix for mantis 0000040 After client logout remote host closed connection on Simulator makes sim unuseable->'Closed Connection Called'
* I've fundamentally changed a few things, so this is experimental
* The routine that I used needs to be tested on Linux.  I don't expect it to cause a problem, but hey, it might.
* Child agents are still not logged off properly, so when the first set time out, the second set get logged off also, on the second log in if the second login is initiated before the first one fully times out.
2007-12-18 00:34:42 +00:00
Teravus Ovares
adf7afb606 * Turned all instances of ForEach loops in ClientManager into Local Arrays.
* Added Locking while the Copy is taking place.
* Added an error message to describe what's actually happening.
2007-12-17 20:24:49 +00:00
mingchen
e2ed1a4e1f *Adding and Removing Avatars from the Access/Ban List for a parcel now works, but the actual ban lines, etc are not done. 2007-12-16 19:53:27 +00:00
Teravus Ovares
e3dd15bef0 * Added support for multiple terrain blocks to be edited at the same time
* Now sending South and East cords to the terrain editor..    
* No new functionality from a user perspective 
* Programming wise, there's enough information to get the select based terrain editor working in an upcoming revision.
2007-12-15 17:10:12 +00:00
lbsa71
653a41fa03 * some work on not storing the circuitPack (bad thing if we're going to reuse packets)
* some work on encapsulation, code convention compliance and beautification.
* also, some ignores
2007-12-15 12:19:29 +00:00
Brian McBee
8a8c89a0f3 Grid Inventory feature upgrade: renaming folders should now be correct, subfolders work, moving folders works.
Tested only in MYSQL, but may work in MSSQL and sqlite.
Probably not working in standalone mode.
2007-12-15 04:57:14 +00:00
Jeff Ames
8d995a5a5d Minor cleanup 2007-12-13 18:45:32 +00:00
Jeff Ames
83ca8bd178 Fix for #176 (... doesn't appear in chat bubbles). This also gets the viewer to handle starting/stopping of the typing animation. 2007-12-13 07:10:32 +00:00
Sean Dague
c7f5a94763 put in a try block to catch the ForEach loop dying. 2007-12-11 22:20:22 +00:00
Sean Dague
6b5db310cd debug to catch any users of the stop interface 2007-12-11 21:57:11 +00:00
Sean Dague
2e38e534d9 consolidate client view exit paths, this seems to
cause a different synchronization issue in other
shutdown routines, though I'm not sure why
2007-12-11 21:47:18 +00:00
Sean Dague
1fd62bc1af force a flush before client shutdown, so no important packets are lost 2007-12-11 20:32:22 +00:00
Sean Dague
696fb65199 minor restructure of ClientView.cs to get all the attributes
and properties to the top of the class definition.
2007-12-11 19:04:08 +00:00
MW
909fcd554f A few minor changes/additions/fixes. 2007-12-11 16:05:53 +00:00
Brian McBee
16903ec488 Implementing updateinventoryfolder: Should now be able to rename folders in inventory 2007-12-11 03:51:32 +00:00
Jeff Ames
40fd37f95a Refactored animation handling in ScenePresence. Now maintains a list of current animations.
* Fixes weirdness when typing and sitting at the same time
* Should fix bug #32 (getting stuck in edit appearance pose)
* Crouchwalk and possibly jump may need more looking into
2007-12-10 15:08:44 +00:00
MW
611327e104 more work on texture downloading.
Refractored the TextureDownloadModule (but currently to make debugging easier, it is running as a non shared module, so this results in a instance of this module being created for each region (and a extra thread per region), this will be changed back soon.
Removed the old texture handling/sending code from AssetCache.
A few other small changes/fixes.
2007-12-10 13:27:23 +00:00
Jeff Ames
af6eb67999 saved OpenSim source code from the giant rampaging unterminated copyright notice of doom 2007-12-10 05:25:16 +00:00
Jeff Ames
e278d07220 refactored ChatModule a bit.
misc cleanup and code convention fixes.
2007-12-10 02:29:42 +00:00
Teravus Ovares
e595f82489 * Hooked up the GridComm event ChildDataUpdate to the scene.
* Added List<RegionInfo> m_neighbours to Scene 
* Hooked up the OnRegionUp event to m_neighbours list 
* Modified RegionInfo to have a bool commFailTF value so that we can skip neighbors that fail.  (when the region comes up, this gets reset to false and the region will try again.
* Added SetChildAgentThrottle(byte[]) to IClientAPI 
* Several other insignificant changes related to passing child pertanant agent data from sim to sim.
2007-12-10 00:46:56 +00:00
Sean Dague
cace0e055c change PacketQueue to take the byte[] throttle instead
of the Packet to set the throttles
2007-12-09 14:47:18 +00:00
Jeff Ames
65b9fa9a5f added more packet handling stubs 2007-12-09 00:07:03 +00:00
Brian McBee
383eccc543 hackish code to allow emptying of trash. This really should be done on the inventory server, and not from the region.
Also: it appeared to work the first try, so I have probably done something horribly wrong.
2007-12-08 20:41:37 +00:00
Brian McBee
beca2373e1 Allow moving, deleting, and restoring objects in inventory.
Note: only tested in grid mode, and emptying trash is still not implemented.
2007-12-08 19:13:10 +00:00
MW
87b337ebf9 Enabled the TextureDownloadModule, so that hopefully I might get some feedback, as to if it makes the texture problem better or worse. As I plan/hope to work on texture/asset downloading this weekend. 2007-12-07 22:47:11 +00:00
Sean Dague
0aa982c252 move to PacketQueue for throttling. This has been tested with a couple
of people, but is enough of a change that more should try it out.  This
removes 500 lines from ClientView.cs in the process.
2007-12-07 21:30:01 +00:00
Adam Johnson
3d938f76b7 Updates to LibSL revision 1498. Thanks Johan! 2007-12-07 08:54:31 +00:00
Teravus Ovares
57f666497b * Added hacked support for 'anyone can move' and 'anyone can copy'.
* BACKUP YOUR PRIM BEFORE UPDATING TO THIS and then double check the prim permissions after applying it with a different avatar (then the master avatar or the prim owner avatar).
* Also, beware that any objects created under the old permission scheme may react oddly.  They may automatically allow anyone to modify them, (which you'll then have to un-set).  
* It's hacked support because when 'anyone can move is set', any avatar can modify the prim (texture, shape, scale, etc)
2007-12-07 07:42:03 +00:00
Sean Dague
9326ee425b added a lock to prevent multiple Timer popping races
on the packet queues.
2007-12-06 21:59:31 +00:00
Sean Dague
1ad83bcf1b reversing the r2599 patch, as this started causing CreateThread errors for
me on Mono 1.2.4, which led to client crashes.  I think the Timer.Stop() 
wasn't doing what was desired on Mono.  The Queue refactoring should address
the readability issues lbsa71 was working on as soon as I get the merge together.
2007-12-06 20:13:02 +00:00
Jeff Ames
73599c0f25 removed obsolete Verbose() function 2007-12-06 18:17:44 +00:00
lbsa71
395637acdd * now the throttle timer is stopped whilst processing Queue so that it won't fire twice
* started to refactored throttling method
* some code convention refactorings
2007-12-06 14:08:22 +00:00
Adam Frisby
9e5f7fb415 * Removed lots of scurrilous uses of ASCII/UTF8.GetBytes for making packet strings. BAD PROGRAMMER BAD. Use Helpers.StringToField instead. >_> 2007-12-06 06:36:49 +00:00
Teravus Ovares
bb824eadee * Refactored Permissions into ScenePresence as requested by MW
* Un-hackerized generating the client_flags 
* Now handling the ObjectPermissions Update packet 
* Warning: Backup your prim before updating.  If you fail to do so and something goes wrong then, All Yr prim are belong to us!
2007-12-05 06:44:32 +00:00
Jeff Ames
54c070608e made log messages for known unhandled packet types shorter and yellower. added handler stubs. 2007-12-04 21:44:10 +00:00
Sean Dague
2adcdd3d15 minor refactor so that I can now grok what happens for outgoing packets 2007-12-04 20:20:15 +00:00
Adam Frisby
91c1e8a734 * Fixed a whole bunch of console messages. 2007-12-04 10:13:13 +00:00
Sean Dague
8f58a9a107 From Justin Casey (IBM)
While exploring what it would take to get the 'new script' button working,
I encountered the fact, some way down in the rabbit hole, that if a user
renamed an item in their inventory and logged out (without a restart of
the simulator), on log in the new name was not preserved.

As far as I can see, this was because any updates which didn't occur
inside a transaction were ignored by opensim.  This patch pays attention
to those changes.  It generates a new asset when an item is updated and
changes the user's inventory properties appropriately.  I believe this
behaviour is in line with the copy-on-write semantics used in the Second
Life protocol - perhaps it could be optimized if we knew for sure that the
only copy of the object was in the user's inventory.

This also means that if you rename an item (e.g. a script) before you drag
it into an object's inventory, the inventory will receive the item's most
recent name and description.
2007-12-03 20:06:01 +00:00
Sean Dague
c29105aa3e This is a simple patch which just renames an IClientAPI method to
SendInventoryItemCreateUpdate() in order to reflect the actual packet it
sends (UpdateCreateInventoryItem).

From Justin Casey (IBM)
2007-12-03 17:24:27 +00:00
MW
27f182ac54 Part 1 of a commit. This revision will not compile, part 2 will be added in a couple of minutes that should fix that.
Some work towards persisting Avatar Appearance (what is being worn).
Added OnAvatarNowWearing event to IClientAPI that is triggered by AgentIsNowWearing packets.
stub code to subscribe to this event in AvatarFactoryModule. 
Todo: code needs to be added to AvatarFactoryModule to save the uuids to a database and then read them back when that modules TryGetIntialAvatarAppearance() method is called.
Done some changes to Scene to make it easier to subclass it: including changed some private fields to protected and made some methods virtual.
2007-12-01 14:20:37 +00:00
Sean Dague
b167507e32 Patch for mantis 0000015: Textures don't display in the object
properties window

From Justin Casey (IBM)
2007-11-30 20:16:40 +00:00
Sean Dague
641e541967 add a few more parens to make sure that throttling condition
is really happening the way we want it to.
2007-11-29 16:32:19 +00:00
Teravus Ovares
4bd38fc65a * Thanks to _SomeOne_, Server side permissions on object editing. Be aware, that if you're editing an object on your client that you're not allowed to, it'll appear that it's moving to you, but won't actually be moving on the sim. 2007-11-29 15:24:31 +00:00
Sean Dague
40dc1ac3b0 I believe this turns throttling back on. I had expected
that the Queue would come in by reference, but it didn't
appear to be.
2007-11-28 18:39:07 +00:00
Sean Dague
5fb81ab881 merged ClientView into a non partial class. Will
make it easier to start breaking this up into 
more discreet functional classes
2007-11-28 13:33:57 +00:00
Sean Dague
cebdd069f4 some variable renames to help me read the throttle code 2007-11-27 20:37:17 +00:00
Teravus Ovares
944b118c62 * Added a way for the Region master user to kick individual users from their sim with a custom message. Their client says, "You've been logged off of secondlife, <Your custom message here> and logs them off.
* Added a way for the Region master user to kick *ALL* users from *ALL* their regions in the estate with a custom message.
2007-11-24 03:28:42 +00:00