John Hurliman
dfd53af1f3
* Fixed the ExpiringCache collection to remove an ambiguity of whether to use local timezone expiration dates or UTC expiration dates. Expiration time is now passed in as the number of seconds relative to the current time
...
* Minor performance improvement in ExpiringCache to avoid instantiating a List<> every time the cache purge timer runs
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3421 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-13 23:06:35 +00:00
John Hurliman
3d95a4a880
* Prevent TestClient's FlyTo command from subscribing to TerseObjectUpdate and slowing down the libomv packet handler except when the command is actually running
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3420 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-13 22:49:13 +00:00
John Hurliman
903dc7570b
* Enabled synchronous handling for seven high traffic sim->client packets: AvatarAnimation, CoarseLocation, ImprovedTerseObjectUpdate, ObjectUpdate, StartPingCheck, CompletePingCheck, and SimStats. For the first four in that last, if your app registers a callback that is fired from any of those handlers the callback will be fired asynchronously still while the rest of the handler runs synchronously
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3419 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-12 22:37:27 +00:00
John Hurliman
d999f404cb
* Added an overload to NetworkManager.RegisterCallback() that specifies whether a callback should be ran synchronously or asynchronously. Existing RegisterCallback() call defaults to async, new overload is not used by any packet handlers yet
...
* Removed deprecated Settings.SYNC_PACKETCALLBACKS
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3418 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-12 19:44:57 +00:00
John Hurliman
dcfb27288a
* Fix packet sending to only send ACKs for incoming packets marked as reliable, not every incoming packet
...
* Fixed a bug in ACK sending that was eating up CPU time
* Put the final UDP packets on the wire synchronously instead of asynchronously. Profiling showed this to be faster than .NET 2.0 style asynchronous sending (although possibly still slower than .NET 3.5 style asynchronous sending)
* Small tweak to LocklessQueue to try and keep LocklessQueue.Count as accurate as possible
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3417 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-12 19:20:37 +00:00
John Hurliman
3fb3d19b52
* Reverting the CSJ2K Array.Copy -> Buffer.BlockCopy optimization for now since I didn't properly update the length parameter the first time around (LIBOMV-861)
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3415 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-06 03:11:08 +00:00
John Hurliman
65deb8f71e
Reverting previous commit (LIBOMV-861)
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3414 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-05 21:47:12 +00:00
John Hurliman
c4e7cb967d
* Add two more CSJ2K logging messages to make it more clear why a decode failed (LIBOMV-861)
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3413 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-05 21:43:12 +00:00
John Hurliman
45e7dd675f
CSJ2K:
...
* Fixed decoding to System.Drawing.Image for single component textures
* Improved exception throwing
* Removed unused ProgressWatch class
* Sanity check for seeking to a negative offset, gracefully handle
* Small speed improvement to the inverse wavelet transform by using Buffer.BlockCopy() and avoiding extra typecasts
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3412 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-05 20:49:03 +00:00
John Hurliman
03901afe1e
* Replaced most CSJ2K Array.Copy() calls with the faster Buffer.BlockCopy() for a ~17% speedup (LIBOMV-861)
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3411 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-05 19:18:24 +00:00
John Hurliman
77e55fa488
CSJ2K improvements (LIBOMV-861):
...
* J2kImage.FromStream() can now handle five component textures (the fifth component is ignored since System.Drawing.Image only supports up to four components
* Fixed incorrect RGBA ordering for four and five component textures
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3410 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-05 00:32:36 +00:00
John Hurliman
90c80753ac
* Remove unused debug logging in CSJ2K that was eating up memory (LIBOMV-861)
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3409 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-04 23:49:56 +00:00
John Hurliman
0055be6820
* THIS IS A POTENTIALLY BREAKING CHANGE *
...
* Changed the OpenMetaverse.Assets.Asset* classes to normalize their behavior as much as possible:
- Some unused constructors were removed
- Decoding is never done if the (assetID, assetData) constructor is called
- AssetPrim decoding from XML will set the AssetPrim.AssetID to the UUID of the root prim in the linkset if it is not already set
- Added more sanity checking in Decode() methods
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3408 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-04 23:25:40 +00:00
John Hurliman
9adcfa8570
* Fix for a regression in the previous commit (LIBOMV-861)
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3407 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-04 22:14:23 +00:00
John Hurliman
984c1c6e4d
* Fixed an EOC marker sanity check in CSJ2K that was potentially reading past the end of the stream
...
* If CSJ2K packet decoding tries to read past the end of the stream, just terminate the decoding and return what we have so far instead of throwing an exception. This experimental fix should improve the JPEG2000 decoding success rate
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3406 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-04 22:01:25 +00:00
John Hurliman
a2b82eb7fe
* Fixed CSJ2K decoding error messages about "COM marker registered as 0x0 unknown"
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3404 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-02 19:36:21 +00:00
Latif Khalifa
b9a4763cce
Avoid saving binary data to log and displaying it on the console
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3402 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-01 01:26:18 +00:00
Latif Khalifa
dff242a53d
LIBOMV-860: Grid proxy unable to proxy http textures
...
* Fixes outgoing range headers
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3401 52acb1d6-8a22-11de-b505-999d5b087335
2010-08-01 00:32:11 +00:00
John Hurliman
9a2a68edf1
* Handle another serialization change in OpenSim XML prims (PlaySoundSlavePrims and LoopSoundSlavePrims fields)
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3400 52acb1d6-8a22-11de-b505-999d5b087335
2010-07-29 17:48:35 +00:00
John Hurliman
2ebc810d72
* Finished OAR file loading
...
* Small performance optimization in JsonMapper.cs
* Added message definitions for new capabilities
* Added (currently unused) new enum values
* Updated to a more recent version of log4net.dll
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3397 52acb1d6-8a22-11de-b505-999d5b087335
2010-07-26 18:01:40 +00:00
Latif Khalifa
74c3b08134
LIBOMV-859: SimPosition reporting RelativePosition when avatar is sitting
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3394 52acb1d6-8a22-11de-b505-999d5b087335
2010-07-25 20:32:43 +00:00
Latif Khalifa
0167806ca3
Additional check in LIBOMV-857 fix.
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3386 52acb1d6-8a22-11de-b505-999d5b087335
2010-07-24 13:53:55 +00:00
Latif Khalifa
11121100cb
LIBOMV-858: MediaPermission enum needs to be treated as bitfield
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3378 52acb1d6-8a22-11de-b505-999d5b087335
2010-07-22 17:55:42 +00:00
Latif Khalifa
1cf8dee511
LIBOMV-857: Avoid sending AgentUpdate message before we send
...
RegionHandshakeReply during the connection sequence, it corrupts
agent position and causes other ill side-effects in Linden sim 1.40.4.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3377 52acb1d6-8a22-11de-b505-999d5b087335
2010-07-22 07:35:01 +00:00
Latif Khalifa
cd5b0774c3
LIBOMV-707: TexturePipeline - PacketSeen Dictionary throws null argument exceptions - Masking a ConcurrentModificationException
...
Patch by Douglas R. Miles
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3375 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-29 13:56:23 +00:00
Latif Khalifa
f91239b460
LIBOMV-856: AgentManager.Sim position returns incorrect results for some OpenSim based grids
...
LIBOMV-464: SimPosition does not fall back on last known CoarseLocationUpdate info
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3374 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-29 13:36:52 +00:00
Latif Khalifa
a539f769d6
LIBOMV-853: Client.Parcels.Terraform Throwing Packet Errors
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3372 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-29 12:41:12 +00:00
Latif Khalifa
d57f0aa470
LIBOMV-851: part II - change serialization to reflect the new deserialization
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3370 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-28 23:53:20 +00:00
Latif Khalifa
c6c70e79af
LIBOMV-851: Bad decoding of mutes for ChatterBoxSessionAgentListUpdatesMessage
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3368 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-28 23:25:41 +00:00
Latif Khalifa
4778946b7c
* Support for non absolute URIs
...
* Fix test (URIs now return escaped strings)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3367 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-28 22:11:53 +00:00
Latif Khalifa
19ee464305
LIBOMV-852: Avatar.Scale not populated
...
Patch by Sierra Janus
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3365 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-28 20:43:53 +00:00
John Hurliman
f108207698
* Fixed a bug in BitPack where existing 1 bits were not being overwritten by new 0 bits
...
* Added BitPack.PackBit()
* Made Binary LLSD deserialization more lenient when parsing the header. Tests pass again
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3364 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-25 01:24:11 +00:00
Latif Khalifa
e1417f2101
LIBOMV-847 (Unable to start voice daemon on Linux)
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3362 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-15 14:37:35 +00:00
John Hurliman
64f990fa38
* Fixed JSON serialization for null/undefined values
...
* Added MappingType.Spherical and MappingType.Cylindrical enum values
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3361 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-05 14:12:24 +00:00
John Hurliman
2c234d9c14
* Fixed OSDUri.AsString()/ToString() to return the escaped Uri instead of the pretty-printed version. " http://example/a%20space/ " instead of " http://example/a space"
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3360 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-05 08:17:57 +00:00
Latif Khalifa
3ccb97e3e1
LIBOMV-843: Added simulator where sound events originate in corresponding event args
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3358 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-29 13:48:18 +00:00
John Hurliman
f5a84b39aa
* LLSD JSON serialization can now take an optional parameter to enable/disable preserving default values in serialization
...
* Fixed a regression where OSDMap.ToString() and OSDArray.ToString() were pruning default values after switching from notation output to JSON
* Fixed LLSD decoding to ignore case when parsing headers and use <? llsd/binary ?> instead of <?llsd/binary?>
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3357 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-25 23:07:16 +00:00
Latif Khalifa
0dc8e91fed
LIBOMV-840: Add method for downloading arbitrary binary data to CapsBase
...
* added DownloadDataAsync() that allows you to create your own custom HttpWebRequest
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3355 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-25 19:53:38 +00:00
Latif Khalifa
0c4bc5cd8f
LIBOMV-839: Gridproxy doesn't proxy bare GET requests
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3354 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-25 19:48:37 +00:00
John Hurliman
06bc4580a6
* Changed OSDArray.ToString() and OSDMap.ToString() to use JSON formatting instead of the deprecated LLSD notation format
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3353 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-24 18:23:39 +00:00
Latif Khalifa
6871439ea2
LIBOMV-837: Dont't dispose objects we're sending via callback
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3352 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-24 10:55:34 +00:00
Latif Khalifa
bae75cb3e2
LIBOMV-835: landstat requests that return no results cause exception to be thrown
...
Patch by Ben Anhalt
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3350 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-18 10:11:56 +00:00
Latif Khalifa
c46b21a4de
LIB-834: Unhandled CAPS event after parcels land stat request
...
Patch by Ben Anhalt
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3347 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-15 08:57:36 +00:00
Latif Khalifa
75305fc3a0
LIBOMV-833: Extra space in openjpeg-dotnet/Makefile messes up with the build on S390X architecture
...
Patch by Aurelien Minvielle
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3345 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-14 20:55:29 +00:00
Latif Khalifa
292f31b0cf
Possible fix for LIBOMV-831:
...
Reading openmetaverse_data fails on readonly filesystem, or if libomv install is read only to the user currently running it resulting in naked avatars after rebake
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3339 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-08 05:04:39 +00:00
Latif Khalifa
4b96cf05f0
More verbose error messages when failing to load resources needed for baking
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3338 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-08 03:21:35 +00:00
John Hurliman
bc86168de9
Few small updates to README.txt (testing out the new SVN repo)
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3337 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-07 21:33:07 +00:00
Latif Khalifa
81d75c6ecd
LIBOMV-830: Adds a try/catch to DoubleDictionary.FindValue() (jurliman)
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3330 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-06 23:31:01 +00:00
Latif Khalifa
64e60e6c3f
LIBOMV-829: Group chat session not always properly registered
...
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3320 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-06 13:43:00 +00:00
Latif Khalifa
0c90200426
LIBOMV-670: [PATCH] Missed the feature of Delinking (Unlinking)
...
Patch by Thijs Wenker
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3318 52acb1d6-8a22-11de-b505-999d5b087335
2010-05-05 07:29:21 +00:00