OpenSimMirror/OpenSim
Justin Clark-Casey (justincc) 539ffb7769 Use thread-safe version of .NET Random as the SDK class is not thread-safe.
As per http://msdn.microsoft.com/en-us/library/system.random%28v=vs.100%29.aspx, the .NET Random class is not thread-safe.
If called by multiple threads at once, methods may return 0.
Except for llRand(), other OpenSimulator code did not lock before calling a shared Random instance.
This commit adds a ThreadSafeRandom class that extends Random but does internal locking so that it is thread-safe.
This change is invisible to existing callers and the explicit locking in the llFrand() implementation is now redundant.
2014-08-02 00:54:42 +01:00
..
Addons Don't try to package null invites. 2014-06-10 20:29:24 +01:00
ApplicationPlugins Actually call Close() for shared region modules when the simulator is being shutdown. 2014-08-02 00:50:10 +01:00
Capabilities Fix test breakage 2014-05-08 11:30:45 -07:00
ConsoleClient Make sure we dispose of WebResponse, StreamReader and Stream in various places where we were not already. 2013-02-27 00:21:02 +00:00
Data Fix a bug where estate not found would result in a dummy estate record with erroneous information. 2014-06-10 20:22:18 +01:00
Framework Use thread-safe version of .NET Random as the SDK class is not thread-safe. 2014-08-02 00:54:42 +01:00
Region Use thread-safe version of .NET Random as the SDK class is not thread-safe. 2014-08-02 00:54:42 +01:00
Server Added simulation version compatibility check so that agents coming from 0.7.6 to a varregion running in 0.8 and above will be denied teleport, rather than be allowed and crash the viewer. 2014-06-10 20:28:47 +01:00
Services Add experimental "show grid size" robust console command. 2014-08-02 00:52:53 +01:00
Tests Actually call Close() for shared region modules when the simulator is being shutdown. 2014-08-02 00:50:10 +01:00
Tools Improved line map heuristics. 2014-08-02 00:49:36 +01:00