aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMelanie2009-09-03 21:04:06 +0100
committerMelanie2009-09-03 21:04:06 +0100
commit5c2bf97bf2fe5dfe69b98bf50df2d994ac4c23bf (patch)
treee48751a92b2ac8bad613c0a1355a9206fe596fd0
parentRemove the distinction between password and login key in the authentication (diff)
parentMerge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim (diff)
downloadopensim-SC-5c2bf97bf2fe5dfe69b98bf50df2d994ac4c23bf.zip
opensim-SC-5c2bf97bf2fe5dfe69b98bf50df2d994ac4c23bf.tar.gz
opensim-SC-5c2bf97bf2fe5dfe69b98bf50df2d994ac4c23bf.tar.bz2
opensim-SC-5c2bf97bf2fe5dfe69b98bf50df2d994ac4c23bf.tar.xz
Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim
-rw-r--r--.nant/local.include38
-rw-r--r--Makefile14
-rw-r--r--OpenSim/Data/MSSQL/MSSQLRegionData.cs1
-rw-r--r--OpenSim/Framework/Util.cs22
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs5
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs51
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Asset/HGAssetBroker.cs2
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Asset/LocalAssetServiceConnector.cs6
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs4
-rw-r--r--OpenSim/Services/Connectors/Asset/AssetServiceConnector.cs2
-rw-r--r--OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs2
-rw-r--r--OpenSim/Services/InventoryService/InventoryService.cs2
-rw-r--r--README.txt3
-rw-r--r--TESTING.txt1
-rw-r--r--bin/OpenSim.ConsoleClient.ini.example13
-rwxr-xr-xnant-color3
16 files changed, 114 insertions, 55 deletions
diff --git a/.nant/local.include b/.nant/local.include
index 510bdc6..58d1ad1 100644
--- a/.nant/local.include
+++ b/.nant/local.include
@@ -34,51 +34,55 @@
34 <setenv name="MONO_THREADS_PER_CPU" value="100" /> 34 <setenv name="MONO_THREADS_PER_CPU" value="100" />
35 35
36 <!-- Unit Test Assembly --> 36 <!-- Unit Test Assembly -->
37 <!-- if you want to add more unit tests it's important that you add
38 the assembly here as an exec, and you add the fail clause later.
39 This lets all the unit tests run and tells you if they fail at the
40 end, instead of stopping short -->
37 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.framework.tests"> 41 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.framework.tests">
38 <arg value="./bin/OpenSim.Framework.Tests.dll" /> 42 <arg value="./bin/OpenSim.Framework.Tests.dll" />
39 </exec> 43 </exec>
40 44
41 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.framework.communications.tests"> 45 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.framework.communications.tests">
42 <arg value="./bin/OpenSim.Framework.Communications.Tests.dll" /> 46 <arg value="./bin/OpenSim.Framework.Communications.Tests.dll" />
43 </exec> 47 </exec>
44 48
45 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.framework.servers.tests"> 49 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.framework.servers.tests">
46 <arg value="./bin/OpenSim.Framework.Servers.Tests.dll" /> 50 <arg value="./bin/OpenSim.Framework.Servers.Tests.dll" />
47 </exec> 51 </exec>
48 52
49 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.clientstack.lindenudp.tests"> 53 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.clientstack.lindenudp.tests">
50 <arg value="./bin/OpenSim.Region.ClientStack.LindenUDP.Tests.dll" /> 54 <arg value="./bin/OpenSim.Region.ClientStack.LindenUDP.Tests.dll" />
51 </exec> 55 </exec>
52 56
53 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.scriptengine.tests"> 57 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.scriptengine.tests">
54 <arg value="./bin/OpenSim.Region.ScriptEngine.Tests.dll" /> 58 <arg value="./bin/OpenSim.Region.ScriptEngine.Tests.dll" />
55 </exec> 59 </exec>
56 60
57 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.coremodules.tests"> 61 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.coremodules.tests">
58 <arg value="./bin/OpenSim.Region.CoreModules.Tests.dll" /> 62 <arg value="./bin/OpenSim.Region.CoreModules.Tests.dll" />
59 </exec> 63 </exec>
60 64
61 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.framework.tests"> 65 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.region.framework.tests">
62 <arg value="./bin/OpenSim.Region.Framework.Tests.dll" /> 66 <arg value="./bin/OpenSim.Region.Framework.Tests.dll" />
63 </exec> 67 </exec>
64 68
65 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.data.sqlite.tests"> 69 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.data.sqlite.tests">
66 <arg value="./bin/OpenSim.Data.SQLite.Tests.dll" /> 70 <arg value="./bin/OpenSim.Data.SQLite.Tests.dll" />
67 </exec> 71 </exec>
68 72
69 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.data.mysql.tests"> 73 <exec program="${nunitcmd}" failonerror="false" resultproperty="testresult.opensim.data.mysql.tests">
70 <arg value="./bin/OpenSim.Data.MySQL.Tests.dll" /> 74 <arg value="./bin/OpenSim.Data.MySQL.Tests.dll" />
71 </exec> 75 </exec>
72 76
73 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.tests)==0}" /> 77 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.communications.tests)==0}" />
74 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.communications.tests)==0}" /> 78 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.tests)==0}" />
75 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.servers.tests)==0}" /> 79 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.data.sqlite.tests)==0}" />
76 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.clientstack.lindenudp.tests)==0}" /> 80 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.data.mysql.tests)==0}" />
77 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.scriptengine.tests)==0}" /> 81 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.framework.tests)==0}" />
78 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.coremodules.tests)==0}" /> 82 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.coremodules.tests)==0}" />
79 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.framework.tests)==0}" /> 83 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.clientstack.lindenudp.tests)==0}" />
80 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.data.sqlite.tests)==0}" /> 84 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.region.scriptengine.tests)==0}" />
81 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.data.mysql.tests)==0}" /> 85 <fail message="Failures reported in unit tests." unless="${int::parse(testresult.opensim.framework.servers.tests)==0}" />
82 86
83</target> 87</target>
84 88
diff --git a/Makefile b/Makefile
index 46ddc2f..493cdca 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,14 @@
1NANT = $(shell if test "$$EMACS" = "t" ; then echo "nant"; else echo "./nant-color"; fi) 1# hey, emacs! this is a -*- makefile -*-
2#
3# OpenSim makefile
4#
5
6RUBY = $(strip $(shell which ruby 2>/dev/null))
7ifeq ($(RUBY),)
8NANT = nant
9else
10NANT = $(shell if test "$$EMACS" = "t" ; then echo "nant"; else echo "./nant-color"; fi)
11endif
2 12
3all: prebuild 13all: prebuild
4 # @export PATH=/usr/local/bin:$(PATH) 14 # @export PATH=/usr/local/bin:$(PATH)
@@ -14,7 +24,7 @@ prebuild:
14 24
15clean: 25clean:
16 # @export PATH=/usr/local/bin:$(PATH) 26 # @export PATH=/usr/local/bin:$(PATH)
17 ${NANT} clean 27 -${NANT} clean
18 28
19test: prebuild 29test: prebuild
20 ${NANT} test 30 ${NANT} test
diff --git a/OpenSim/Data/MSSQL/MSSQLRegionData.cs b/OpenSim/Data/MSSQL/MSSQLRegionData.cs
index c9e4bfe..adedcce 100644
--- a/OpenSim/Data/MSSQL/MSSQLRegionData.cs
+++ b/OpenSim/Data/MSSQL/MSSQLRegionData.cs
@@ -210,6 +210,7 @@ namespace OpenSim.Data.MSSQL
210 { 210 {
211 foreach (SceneObjectPart objectPart in allPrimsWithInventory) 211 foreach (SceneObjectPart objectPart in allPrimsWithInventory)
212 { 212 {
213 command.Parameters.Clear();
213 command.Parameters.Add(_Database.CreateParameter("@PrimID", objectPart.UUID)); 214 command.Parameters.Add(_Database.CreateParameter("@PrimID", objectPart.UUID));
214 215
215 List<TaskInventoryItem> inventory = new List<TaskInventoryItem>(); 216 List<TaskInventoryItem> inventory = new List<TaskInventoryItem>();
diff --git a/OpenSim/Framework/Util.cs b/OpenSim/Framework/Util.cs
index bbb0ae2..58344f3 100644
--- a/OpenSim/Framework/Util.cs
+++ b/OpenSim/Framework/Util.cs
@@ -1169,5 +1169,27 @@ namespace OpenSim.Framework
1169 1169
1170 return found.ToArray(); 1170 return found.ToArray();
1171 } 1171 }
1172
1173 #region FireAndForget Threading Pattern
1174
1175 public static void FireAndForget(System.Threading.WaitCallback callback)
1176 {
1177 callback.BeginInvoke(null, EndFireAndForget, callback);
1178 }
1179
1180 public static void FireAndForget(System.Threading.WaitCallback callback, object obj)
1181 {
1182 callback.BeginInvoke(obj, EndFireAndForget, callback);
1183 }
1184
1185 private static void EndFireAndForget(IAsyncResult ar)
1186 {
1187 System.Threading.WaitCallback callback = (System.Threading.WaitCallback)ar.AsyncState;
1188
1189 callback.EndInvoke(ar);
1190 ar.AsyncWaitHandle.Close();
1191 }
1192
1193 #endregion FireAndForget Threading Pattern
1172 } 1194 }
1173} 1195}
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
index 4ee90e2..f73a7e3 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
@@ -199,6 +199,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
199 InventoryFolderImpl inventoryFolder = null; 199 InventoryFolderImpl inventoryFolder = null;
200 InventoryItemBase inventoryItem = null; 200 InventoryItemBase inventoryItem = null;
201 201
202 /*
202 if (!m_userInfo.HasReceivedInventory) 203 if (!m_userInfo.HasReceivedInventory)
203 { 204 {
204 // If the region server has access to the user admin service (by which users are created), 205 // If the region server has access to the user admin service (by which users are created),
@@ -220,13 +221,15 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
220 m_userInfo.FetchInventory(); 221 m_userInfo.FetchInventory();
221 } 222 }
222 } 223 }
224 */
223 225
224 bool foundStar = false; 226 bool foundStar = false;
225 227
226 // Eliminate double slashes and any leading / on the path. This might be better done within InventoryFolderImpl 228 // Eliminate double slashes and any leading / on the path. This might be better done within InventoryFolderImpl
227 // itself (possibly at a small loss in efficiency). 229 // itself (possibly at a small loss in efficiency).
228 string[] components 230 string[] components
229 = m_invPath.Split(new string[] { InventoryFolderImpl.PATH_DELIMITER }, StringSplitOptions.RemoveEmptyEntries); 231 = m_invPath.Split(
232 new string[] { InventoryFolderImpl.PATH_DELIMITER }, StringSplitOptions.RemoveEmptyEntries);
230 233
231 int maxComponentIndex = components.Length - 1; 234 int maxComponentIndex = components.Length - 1;
232 235
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs
index d3ba5fe..c495e02 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs
@@ -64,6 +64,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
64 /// </value> 64 /// </value>
65 private Dictionary<UUID, Scene> m_scenes = new Dictionary<UUID, Scene>(); 65 private Dictionary<UUID, Scene> m_scenes = new Dictionary<UUID, Scene>();
66 private Scene m_aScene; 66 private Scene m_aScene;
67
67 /// <value> 68 /// <value>
68 /// The comms manager we will use for all comms requests 69 /// The comms manager we will use for all comms requests
69 /// </value> 70 /// </value>
@@ -110,8 +111,30 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
110 InventoryArchiveSaved handlerInventoryArchiveSaved = OnInventoryArchiveSaved; 111 InventoryArchiveSaved handlerInventoryArchiveSaved = OnInventoryArchiveSaved;
111 if (handlerInventoryArchiveSaved != null) 112 if (handlerInventoryArchiveSaved != null)
112 handlerInventoryArchiveSaved(succeeded, userInfo, invPath, saveStream, reportedException); 113 handlerInventoryArchiveSaved(succeeded, userInfo, invPath, saveStream, reportedException);
114 }
115
116 public void ArchiveInventory(string firstName, string lastName, string invPath, Stream saveStream)
117 {
118 if (m_scenes.Count > 0)
119 {
120 CachedUserInfo userInfo = GetUserInfo(firstName, lastName);
121
122 if (userInfo != null)
123 new InventoryArchiveWriteRequest(this, userInfo, invPath, saveStream).Execute();
124 }
125 }
126
127 public void ArchiveInventory(string firstName, string lastName, string invPath, string savePath)
128 {
129 if (m_scenes.Count > 0)
130 {
131 CachedUserInfo userInfo = GetUserInfo(firstName, lastName);
132
133 if (userInfo != null)
134 new InventoryArchiveWriteRequest(this, userInfo, invPath, savePath).Execute();
135 }
113 } 136 }
114 137
115 public void DearchiveInventory(string firstName, string lastName, string invPath, Stream loadStream) 138 public void DearchiveInventory(string firstName, string lastName, string invPath, Stream loadStream)
116 { 139 {
117 if (m_scenes.Count > 0) 140 if (m_scenes.Count > 0)
@@ -125,18 +148,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
125 UpdateClientWithLoadedNodes(userInfo, request.Execute()); 148 UpdateClientWithLoadedNodes(userInfo, request.Execute());
126 } 149 }
127 } 150 }
128 } 151 }
129
130 public void ArchiveInventory(string firstName, string lastName, string invPath, Stream saveStream)
131 {
132 if (m_scenes.Count > 0)
133 {
134 CachedUserInfo userInfo = GetUserInfo(firstName, lastName);
135
136 if (userInfo != null)
137 new InventoryArchiveWriteRequest(this, userInfo, invPath, saveStream).Execute();
138 }
139 }
140 152
141 public void DearchiveInventory(string firstName, string lastName, string invPath, string loadPath) 153 public void DearchiveInventory(string firstName, string lastName, string invPath, string loadPath)
142 { 154 {
@@ -151,18 +163,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
151 UpdateClientWithLoadedNodes(userInfo, request.Execute()); 163 UpdateClientWithLoadedNodes(userInfo, request.Execute());
152 } 164 }
153 } 165 }
154 } 166 }
155
156 public void ArchiveInventory(string firstName, string lastName, string invPath, string savePath)
157 {
158 if (m_scenes.Count > 0)
159 {
160 CachedUserInfo userInfo = GetUserInfo(firstName, lastName);
161
162 if (userInfo != null)
163 new InventoryArchiveWriteRequest(this, userInfo, invPath, savePath).Execute();
164 }
165 }
166 167
167 /// <summary> 168 /// <summary>
168 /// Load inventory from an inventory file archive 169 /// Load inventory from an inventory file archive
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Asset/HGAssetBroker.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Asset/HGAssetBroker.cs
index 621e9d2..7b4e374 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Asset/HGAssetBroker.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Asset/HGAssetBroker.cs
@@ -272,7 +272,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset
272 272
273 if (asset != null) 273 if (asset != null)
274 { 274 {
275 handler.BeginInvoke(id, sender, asset, null, null); 275 Util.FireAndForget(delegate { handler(id, sender, asset); });
276 return true; 276 return true;
277 } 277 }
278 278
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Asset/LocalAssetServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Asset/LocalAssetServiceConnector.cs
index b13a116..fd3aaf4 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Asset/LocalAssetServiceConnector.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Asset/LocalAssetServiceConnector.cs
@@ -211,7 +211,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset
211 211
212 if (asset != null) 212 if (asset != null)
213 { 213 {
214 handler.BeginInvoke(id, sender, asset, null, null); 214 Util.FireAndForget(delegate { handler(id, sender, asset); });
215 return true; 215 return true;
216 } 216 }
217 217
@@ -219,8 +219,8 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset
219 { 219 {
220 if ((a != null) && (m_Cache != null)) 220 if ((a != null) && (m_Cache != null))
221 m_Cache.Cache(a); 221 m_Cache.Cache(a);
222 222
223 handler.BeginInvoke(assetID, s, a, null, null); 223 Util.FireAndForget(delegate { handler(assetID, s, a); });
224 }); 224 });
225 } 225 }
226 226
diff --git a/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs b/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs
index 55b100b..fddba86 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs
@@ -457,6 +457,8 @@ namespace OpenSim.Region.Framework.Scenes
457 457
458 void SendInventoryComplete(IAsyncResult iar) 458 void SendInventoryComplete(IAsyncResult iar)
459 { 459 {
460 SendInventoryDelegate d = (SendInventoryDelegate)iar.AsyncState;
461 d.EndInvoke(iar);
460 } 462 }
461 463
462 /// <summary> 464 /// <summary>
@@ -622,6 +624,8 @@ namespace OpenSim.Region.Framework.Scenes
622 624
623 private void PurgeFolderCompleted(IAsyncResult iar) 625 private void PurgeFolderCompleted(IAsyncResult iar)
624 { 626 {
627 PurgeFolderDelegate d = (PurgeFolderDelegate)iar.AsyncState;
628 d.EndInvoke(iar);
625 } 629 }
626 } 630 }
627} 631}
diff --git a/OpenSim/Services/Connectors/Asset/AssetServiceConnector.cs b/OpenSim/Services/Connectors/Asset/AssetServiceConnector.cs
index d9748d4..ffc8e4c 100644
--- a/OpenSim/Services/Connectors/Asset/AssetServiceConnector.cs
+++ b/OpenSim/Services/Connectors/Asset/AssetServiceConnector.cs
@@ -177,7 +177,7 @@ namespace OpenSim.Services.Connectors
177 } 177 }
178 else 178 else
179 { 179 {
180 handler.BeginInvoke(id, sender, asset, null, null); 180 Util.FireAndForget(delegate { handler(id, sender, asset); });
181 } 181 }
182 182
183 return true; 183 return true;
diff --git a/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs b/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs
index a2261ba..cef678d 100644
--- a/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs
+++ b/OpenSim/Services/Connectors/Inventory/InventoryServiceConnector.cs
@@ -461,6 +461,8 @@ namespace OpenSim.Services.Connectors
461 461
462 private void MoveItemsCompleted(IAsyncResult iar) 462 private void MoveItemsCompleted(IAsyncResult iar)
463 { 463 {
464 MoveItemsDelegate d = (MoveItemsDelegate)iar.AsyncState;
465 d.EndInvoke(iar);
464 } 466 }
465 467
466 public bool MoveItems(string userID, List<InventoryItemBase> items, UUID sessionID) 468 public bool MoveItems(string userID, List<InventoryItemBase> items, UUID sessionID)
diff --git a/OpenSim/Services/InventoryService/InventoryService.cs b/OpenSim/Services/InventoryService/InventoryService.cs
index f04754b..b98e256 100644
--- a/OpenSim/Services/InventoryService/InventoryService.cs
+++ b/OpenSim/Services/InventoryService/InventoryService.cs
@@ -232,7 +232,7 @@ namespace OpenSim.Services.InventoryService
232 m_log.WarnFormat("[INVENTORY SERVICE]: User {0} inventory not available", userID); 232 m_log.WarnFormat("[INVENTORY SERVICE]: User {0} inventory not available", userID);
233 } 233 }
234 234
235 callback.BeginInvoke(folders, items, null, null); 235 Util.FireAndForget(delegate { callback(folders, items); });
236 } 236 }
237 237
238 public InventoryCollection GetFolderContent(UUID userID, UUID folderID) 238 public InventoryCollection GetFolderContent(UUID userID, UUID folderID)
diff --git a/README.txt b/README.txt
index cdbf011..83ac7d6 100644
--- a/README.txt
+++ b/README.txt
@@ -1,7 +1,7 @@
1Welcome to OpenSim! 1Welcome to OpenSim!
2 2
3Version 0.6.x 3Version 0.6.x
4 4
5== OVERVIEW == 5== OVERVIEW ==
6 6
7OpenSim is a BSD Licensed Open Source project to develop a functioning 7OpenSim is a BSD Licensed Open Source project to develop a functioning
@@ -90,4 +90,3 @@ project can always be found at http://opensimulator.org.
90 90
91Thanks for trying OpenSim, we hope it is a pleasant experience. 91Thanks for trying OpenSim, we hope it is a pleasant experience.
92 92
93
diff --git a/TESTING.txt b/TESTING.txt
index 94f5887..e0a7748 100644
--- a/TESTING.txt
+++ b/TESTING.txt
@@ -135,3 +135,4 @@ nunit-console2 OpenSim.Framework.Tests.dll (on linux)
135nunit-console OpenSim.Framework.Tests.dll (on windows) 135nunit-console OpenSim.Framework.Tests.dll (on windows)
136 136
137For more information on testing contact the autor of this testing readme: Daedius Moskvitch ( daedius @@@@ daedius com) 137For more information on testing contact the autor of this testing readme: Daedius Moskvitch ( daedius @@@@ daedius com)
138
diff --git a/bin/OpenSim.ConsoleClient.ini.example b/bin/OpenSim.ConsoleClient.ini.example
index beea7d8..5223d1d 100644
--- a/bin/OpenSim.ConsoleClient.ini.example
+++ b/bin/OpenSim.ConsoleClient.ini.example
@@ -1 +1,14 @@
1[Startup] 1[Startup]
2 ; Set here or use the -user command-line switch
3 ;user = Test
4
5 ; Set here or use the -host command-line switch
6 ;host = localhost
7
8 ; Set here or use the -port command-line switch
9 ;port = 8003
10
11 ; Set here or use the -pass command-line switch
12 ; Please be aware that this is not secure since the password is in the clear
13 ; we recommend the use of -pass wherever possible
14 ;pass = secret
diff --git a/nant-color b/nant-color
index c4cebb0..b368986 100755
--- a/nant-color
+++ b/nant-color
@@ -1,5 +1,4 @@
1#!/usr/bin/ruby 1#!/usr/bin/env ruby
2
3 2
4def main 3def main
5 IO.popen("nant #{ARGV.join(' ')}") { |pipe| 4 IO.popen("nant #{ARGV.join(' ')}") { |pipe|