diff options
Diffstat (limited to 'OpenSim/Region/CoreModules')
6 files changed, 99 insertions, 84 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs index 3971da0..2ef86c9 100644 --- a/OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs +++ b/OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs | |||
@@ -556,6 +556,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments.Tests | |||
556 | // In the future, we need to be able to do this programatically more predicably. | 556 | // In the future, we need to be able to do this programatically more predicably. |
557 | scene.EventManager.OnChatFromWorld += OnChatFromWorld; | 557 | scene.EventManager.OnChatFromWorld += OnChatFromWorld; |
558 | 558 | ||
559 | m_chatEvent.Reset(); | ||
559 | scene.AttachmentsModule.RezSingleAttachmentFromInventory(sp, userItem.ID, (uint)AttachmentPoint.Chest); | 560 | scene.AttachmentsModule.RezSingleAttachmentFromInventory(sp, userItem.ID, (uint)AttachmentPoint.Chest); |
560 | 561 | ||
561 | m_chatEvent.WaitOne(60000); | 562 | m_chatEvent.WaitOne(60000); |
@@ -669,6 +670,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments.Tests | |||
669 | // In the future, we need to be able to do this programatically more predicably. | 670 | // In the future, we need to be able to do this programatically more predicably. |
670 | scene.EventManager.OnChatFromWorld += OnChatFromWorld; | 671 | scene.EventManager.OnChatFromWorld += OnChatFromWorld; |
671 | 672 | ||
673 | m_chatEvent.Reset(); | ||
672 | SceneObjectGroup rezzedSo | 674 | SceneObjectGroup rezzedSo |
673 | = (SceneObjectGroup)(scene.AttachmentsModule.RezSingleAttachmentFromInventory(sp, userItem.ID, (uint)AttachmentPoint.Chest)); | 675 | = (SceneObjectGroup)(scene.AttachmentsModule.RezSingleAttachmentFromInventory(sp, userItem.ID, (uint)AttachmentPoint.Chest)); |
674 | 676 | ||
diff --git a/OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs b/OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs index fd6202a..ee0a4f8 100644 --- a/OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs | |||
@@ -206,7 +206,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Chat | |||
206 | UUID fromID = UUID.Zero; | 206 | UUID fromID = UUID.Zero; |
207 | UUID ownerID = UUID.Zero; | 207 | UUID ownerID = UUID.Zero; |
208 | string message = c.Message; | 208 | string message = c.Message; |
209 | IScene scene = c.Scene; | 209 | Scene scene = c.Scene as Scene; |
210 | UUID destination = c.Destination; | 210 | UUID destination = c.Destination; |
211 | Vector3 fromPos = c.Position; | 211 | Vector3 fromPos = c.Position; |
212 | Vector3 regionPos = new Vector3(scene.RegionInfo.WorldLocX, scene.RegionInfo.WorldLocY, 0); | 212 | Vector3 regionPos = new Vector3(scene.RegionInfo.WorldLocX, scene.RegionInfo.WorldLocY, 0); |
@@ -217,47 +217,48 @@ namespace OpenSim.Region.CoreModules.Avatar.Chat | |||
217 | 217 | ||
218 | if (c.Channel == DEBUG_CHANNEL) c.Type = ChatTypeEnum.DebugChannel; | 218 | if (c.Channel == DEBUG_CHANNEL) c.Type = ChatTypeEnum.DebugChannel; |
219 | 219 | ||
220 | if(!m_scenes.Contains(scene)) | ||
221 | { | ||
222 | m_log.WarnFormat("[CHAT]: message from unkown scene {0} ignored", | ||
223 | scene.RegionInfo.RegionName); | ||
224 | return; | ||
225 | } | ||
226 | |||
220 | switch (sourceType) | 227 | switch (sourceType) |
221 | { | 228 | { |
222 | case ChatSourceType.Agent: | 229 | case ChatSourceType.Agent: |
223 | if (!(scene is Scene)) | 230 | ScenePresence avatar = (scene as Scene).GetScenePresence(c.Sender.AgentId); |
224 | { | 231 | fromPos = avatar.AbsolutePosition; |
225 | m_log.WarnFormat("[CHAT]: scene {0} is not a Scene object, cannot obtain scene presence for {1}", | 232 | fromName = avatar.Name; |
226 | scene.RegionInfo.RegionName, c.Sender.AgentId); | 233 | fromID = c.Sender.AgentId; |
227 | return; | 234 | if (avatar.GodLevel >= 200) |
228 | } | 235 | { // let gods speak to outside or things may get confusing |
229 | ScenePresence avatar = (scene as Scene).GetScenePresence(c.Sender.AgentId); | 236 | fromNamePrefix = m_adminPrefix; |
230 | fromPos = avatar.AbsolutePosition; | 237 | checkParcelHide = false; |
231 | fromName = avatar.Name; | 238 | } |
232 | fromID = c.Sender.AgentId; | 239 | else |
233 | if (avatar.GodLevel >= 200) | 240 | { |
234 | { // let gods speak to outside or things may get confusing | 241 | checkParcelHide = true; |
235 | fromNamePrefix = m_adminPrefix; | 242 | } |
236 | checkParcelHide = false; | 243 | destination = UUID.Zero; // Avatars cant "SayTo" |
237 | } | 244 | ownerID = c.Sender.AgentId; |
238 | else | ||
239 | { | ||
240 | checkParcelHide = true; | ||
241 | } | ||
242 | destination = UUID.Zero; // Avatars cant "SayTo" | ||
243 | ownerID = c.Sender.AgentId; | ||
244 | 245 | ||
245 | hidePos = fromPos; | 246 | hidePos = fromPos; |
246 | break; | 247 | break; |
247 | 248 | ||
248 | case ChatSourceType.Object: | 249 | case ChatSourceType.Object: |
249 | fromID = c.SenderUUID; | 250 | fromID = c.SenderUUID; |
250 | 251 | ||
251 | if (c.SenderObject != null && c.SenderObject is SceneObjectPart) | 252 | if (c.SenderObject != null && c.SenderObject is SceneObjectPart) |
252 | { | ||
253 | ownerID = ((SceneObjectPart)c.SenderObject).OwnerID; | ||
254 | if (((SceneObjectPart)c.SenderObject).ParentGroup.IsAttachment) | ||
255 | { | 253 | { |
256 | checkParcelHide = true; | 254 | ownerID = ((SceneObjectPart)c.SenderObject).OwnerID; |
257 | hidePos = ((SceneObjectPart)c.SenderObject).ParentGroup.AbsolutePosition; | 255 | if (((SceneObjectPart)c.SenderObject).ParentGroup.IsAttachment) |
256 | { | ||
257 | checkParcelHide = true; | ||
258 | hidePos = ((SceneObjectPart)c.SenderObject).ParentGroup.AbsolutePosition; | ||
259 | } | ||
258 | } | 260 | } |
259 | } | 261 | break; |
260 | break; | ||
261 | } | 262 | } |
262 | 263 | ||
263 | // TODO: iterate over message | 264 | // TODO: iterate over message |
@@ -275,7 +276,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Chat | |||
275 | checkParcelHide = false; | 276 | checkParcelHide = false; |
276 | if (c.Type < ChatTypeEnum.DebugChannel && destination == UUID.Zero) | 277 | if (c.Type < ChatTypeEnum.DebugChannel && destination == UUID.Zero) |
277 | { | 278 | { |
278 | ILandObject srcland = (scene as Scene).LandChannel.GetLandObject(hidePos.X, hidePos.Y); | 279 | ILandObject srcland = scene.LandChannel.GetLandObject(hidePos.X, hidePos.Y); |
279 | if (srcland != null && !srcland.LandData.SeeAVs) | 280 | if (srcland != null && !srcland.LandData.SeeAVs) |
280 | { | 281 | { |
281 | sourceParcelID = srcland.LandData.GlobalID; | 282 | sourceParcelID = srcland.LandData.GlobalID; |
@@ -284,50 +285,42 @@ namespace OpenSim.Region.CoreModules.Avatar.Chat | |||
284 | } | 285 | } |
285 | } | 286 | } |
286 | 287 | ||
287 | foreach (Scene s in m_scenes) | 288 | scene.ForEachScenePresence( |
288 | { | 289 | delegate(ScenePresence presence) |
289 | // This should use ForEachClient, but clients don't have a position. | 290 | { |
290 | // If camera is moved into client, then camera position can be used | 291 | if (destination != UUID.Zero && presence.UUID != destination) |
291 | // MT: No, it can't, as chat is heard from the avatar position, not | 292 | return; |
292 | // the camera position. | ||
293 | 293 | ||
294 | s.ForEachScenePresence( | 294 | if(presence.IsChildAgent) |
295 | delegate(ScenePresence presence) | 295 | { |
296 | { | 296 | if(checkParcelHide) |
297 | if (destination != UUID.Zero && presence.UUID != destination) | 297 | return; |
298 | if (TrySendChatMessage(presence, fromPos, regionPos, fromID, | ||
299 | ownerID, fromNamePrefix + fromName, c.Type, | ||
300 | message, sourceType, (destination != UUID.Zero))) | ||
301 | receiverIDs.Add(presence.UUID); | ||
298 | return; | 302 | return; |
299 | ILandObject Presencecheck = s.LandChannel.GetLandObject(presence.AbsolutePosition.X, presence.AbsolutePosition.Y); | 303 | } |
300 | if (Presencecheck != null) | 304 | |
305 | ILandObject Presencecheck = scene.LandChannel.GetLandObject(presence.AbsolutePosition.X, presence.AbsolutePosition.Y); | ||
306 | if (Presencecheck != null) | ||
307 | { | ||
308 | if (checkParcelHide) | ||
301 | { | 309 | { |
302 | // This will pass all chat from objects. Not | 310 | if (sourceParcelID != Presencecheck.LandData.GlobalID && presence.GodLevel < 200) |
303 | // perfect, but it will do. For now. Better | 311 | return; |
304 | // than the prior behavior of muting all | ||
305 | // objects on a parcel with access restrictions | ||
306 | if (checkParcelHide) | ||
307 | { | ||
308 | if (sourceParcelID != Presencecheck.LandData.GlobalID && presence.GodLevel < 200) | ||
309 | return; | ||
310 | } | ||
311 | if (c.Sender == null || Presencecheck.IsEitherBannedOrRestricted(c.Sender.AgentId) != true) | ||
312 | { | ||
313 | if (TrySendChatMessage(presence, fromPos, regionPos, fromID, | ||
314 | ownerID, fromNamePrefix + fromName, c.Type, | ||
315 | message, sourceType, (destination != UUID.Zero))) | ||
316 | receiverIDs.Add(presence.UUID); | ||
317 | } | ||
318 | } | 312 | } |
319 | else if(!checkParcelHide && (presence.IsChildAgent)) | 313 | if (c.Sender == null || Presencecheck.IsEitherBannedOrRestricted(c.Sender.AgentId) != true) |
320 | { | 314 | { |
321 | if (TrySendChatMessage(presence, fromPos, regionPos, fromID, | 315 | if (TrySendChatMessage(presence, fromPos, regionPos, fromID, |
322 | ownerID, fromNamePrefix + fromName, c.Type, | 316 | ownerID, fromNamePrefix + fromName, c.Type, |
323 | message, sourceType, (destination != UUID.Zero))) | 317 | message, sourceType, (destination != UUID.Zero))) |
324 | receiverIDs.Add(presence.UUID); | 318 | receiverIDs.Add(presence.UUID); |
325 | } | 319 | } |
326 | } | 320 | } |
327 | ); | 321 | }); |
328 | } | ||
329 | 322 | ||
330 | (scene as Scene).EventManager.TriggerOnChatToClients( | 323 | scene.EventManager.TriggerOnChatToClients( |
331 | fromID, receiverIDs, message, c.Type, fromPos, fromName, sourceType, ChatAudibleLevel.Fully); | 324 | fromID, receiverIDs, message, c.Type, fromPos, fromName, sourceType, ChatAudibleLevel.Fully); |
332 | } | 325 | } |
333 | 326 | ||
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs index ed93f05..9899ccd 100644 --- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs +++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs | |||
@@ -1049,6 +1049,8 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
1049 | 1049 | ||
1050 | sp.HasMovedAway(!(OutSideViewRange || logout)); | 1050 | sp.HasMovedAway(!(OutSideViewRange || logout)); |
1051 | 1051 | ||
1052 | ulong sourceRegionHandle = sp.RegionHandle; | ||
1053 | |||
1052 | // Now let's make it officially a child agent | 1054 | // Now let's make it officially a child agent |
1053 | sp.MakeChildAgent(destinationHandle); | 1055 | sp.MakeChildAgent(destinationHandle); |
1054 | 1056 | ||
@@ -1066,8 +1068,8 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
1066 | // This sleep can be increased if necessary. However, whilst it's active, | 1068 | // This sleep can be increased if necessary. However, whilst it's active, |
1067 | // an agent cannot teleport back to this region if it has teleported away. | 1069 | // an agent cannot teleport back to this region if it has teleported away. |
1068 | Thread.Sleep(2000); | 1070 | Thread.Sleep(2000); |
1069 | if (m_eqModule != null && !sp.DoNotCloseAfterTeleport) | 1071 | // if (m_eqModule != null && !sp.DoNotCloseAfterTeleport) |
1070 | m_eqModule.DisableSimulator(sp.RegionHandle,sp.UUID); | 1072 | // m_eqModule.DisableSimulator(sourceRegionHandle,sp.UUID); |
1071 | Thread.Sleep(500); | 1073 | Thread.Sleep(500); |
1072 | sp.Scene.CloseAgent(sp.UUID, false); | 1074 | sp.Scene.CloseAgent(sp.UUID, false); |
1073 | } | 1075 | } |
@@ -1194,11 +1196,11 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
1194 | //HG hook | 1196 | //HG hook |
1195 | AgentHasMovedAway(sp, logout); | 1197 | AgentHasMovedAway(sp, logout); |
1196 | 1198 | ||
1199 | ulong sourceRegionHandle = sp.RegionHandle; | ||
1200 | |||
1197 | // Now let's make it officially a child agent | 1201 | // Now let's make it officially a child agent |
1198 | sp.MakeChildAgent(destinationHandle); | 1202 | sp.MakeChildAgent(destinationHandle); |
1199 | 1203 | ||
1200 | |||
1201 | |||
1202 | // Finally, let's close this previously-known-as-root agent, when the jump is outside the view zone | 1204 | // Finally, let's close this previously-known-as-root agent, when the jump is outside the view zone |
1203 | // go by HG hook | 1205 | // go by HG hook |
1204 | if (NeedsClosing(reg, OutSideViewRange)) | 1206 | if (NeedsClosing(reg, OutSideViewRange)) |
@@ -1213,10 +1215,10 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
1213 | // DECREASING THE WAIT TIME HERE WILL EITHER RESULT IN A VIEWER CRASH OR | 1215 | // DECREASING THE WAIT TIME HERE WILL EITHER RESULT IN A VIEWER CRASH OR |
1214 | // IN THE AVIE BEING PLACED IN INFINITY FOR A COUPLE OF SECONDS. | 1216 | // IN THE AVIE BEING PLACED IN INFINITY FOR A COUPLE OF SECONDS. |
1215 | 1217 | ||
1216 | Thread.Sleep(14000); | 1218 | Thread.Sleep(15000); |
1217 | if (m_eqModule != null && !sp.DoNotCloseAfterTeleport) | 1219 | // if (m_eqModule != null && !sp.DoNotCloseAfterTeleport) |
1218 | m_eqModule.DisableSimulator(sp.RegionHandle,sp.UUID); | 1220 | // m_eqModule.DisableSimulator(sourceRegionHandle,sp.UUID); |
1219 | Thread.Sleep(1000); | 1221 | // Thread.Sleep(1000); |
1220 | 1222 | ||
1221 | // OK, it got this agent. Let's close everything | 1223 | // OK, it got this agent. Let's close everything |
1222 | // If we shouldn't close the agent due to some other region renewing the connection | 1224 | // If we shouldn't close the agent due to some other region renewing the connection |
@@ -1802,6 +1804,10 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
1802 | // Unlike a teleport, here we do not wait for the destination region to confirm the receipt. | 1804 | // Unlike a teleport, here we do not wait for the destination region to confirm the receipt. |
1803 | m_entityTransferStateMachine.UpdateInTransit(agent.UUID, AgentTransferState.CleaningUp); | 1805 | m_entityTransferStateMachine.UpdateInTransit(agent.UUID, AgentTransferState.CleaningUp); |
1804 | 1806 | ||
1807 | |||
1808 | |||
1809 | agent.CloseChildAgents(false, neighbourRegion.RegionHandle, neighbourRegion.RegionSizeX, neighbourRegion.RegionSizeY); | ||
1810 | |||
1805 | // this may need the attachments | 1811 | // this may need the attachments |
1806 | 1812 | ||
1807 | agent.HasMovedAway(true); | 1813 | agent.HasMovedAway(true); |
@@ -1811,9 +1817,6 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
1811 | // FIXME: Possibly this should occur lower down after other commands to close other agents, | 1817 | // FIXME: Possibly this should occur lower down after other commands to close other agents, |
1812 | // but not sure yet what the side effects would be. | 1818 | // but not sure yet what the side effects would be. |
1813 | m_entityTransferStateMachine.ResetFromTransit(agent.UUID); | 1819 | m_entityTransferStateMachine.ResetFromTransit(agent.UUID); |
1814 | |||
1815 | agent.CloseChildAgents(false, neighbourRegion.RegionHandle, neighbourRegion.RegionSizeX, neighbourRegion.RegionSizeY); | ||
1816 | |||
1817 | // TODO: Check since what version this wasn't needed anymore. May be as old as 0.6 | 1820 | // TODO: Check since what version this wasn't needed anymore. May be as old as 0.6 |
1818 | /* | 1821 | /* |
1819 | // Backwards compatibility. Best effort | 1822 | // Backwards compatibility. Best effort |
diff --git a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs index 7d0c47f..e1764bf 100644 --- a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs +++ b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs | |||
@@ -182,6 +182,8 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement | |||
182 | // m_log.DebugFormat( | 182 | // m_log.DebugFormat( |
183 | // "[USER MANAGEMENT MODULE]: Handling request for name binding of UUID {0} from {1}", | 183 | // "[USER MANAGEMENT MODULE]: Handling request for name binding of UUID {0} from {1}", |
184 | // uuid, remote_client.Name); | 184 | // uuid, remote_client.Name); |
185 | if(m_Scenes.Count <= 0) | ||
186 | return; | ||
185 | 187 | ||
186 | if (m_Scenes[0].LibraryService != null && (m_Scenes[0].LibraryService.LibraryRootFolder.Owner == uuid)) | 188 | if (m_Scenes[0].LibraryService != null && (m_Scenes[0].LibraryService.LibraryRootFolder.Owner == uuid)) |
187 | { | 189 | { |
@@ -288,6 +290,9 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement | |||
288 | 290 | ||
289 | public List<UserData> GetUserData(string query, int page_size, int page_number) | 291 | public List<UserData> GetUserData(string query, int page_size, int page_number) |
290 | { | 292 | { |
293 | if(m_Scenes.Count <= 0) | ||
294 | return new List<UserData>();; | ||
295 | |||
291 | // search the user accounts service | 296 | // search the user accounts service |
292 | List<UserAccount> accs = m_Scenes[0].UserAccountService.GetUserAccounts(m_Scenes[0].RegionInfo.ScopeID, query); | 297 | List<UserAccount> accs = m_Scenes[0].UserAccountService.GetUserAccounts(m_Scenes[0].RegionInfo.ScopeID, query); |
293 | 298 | ||
@@ -380,6 +385,9 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement | |||
380 | /// <param name='names'>The array of names if found. If not found, then names[0] = "Unknown" and names[1] = "User"</param> | 385 | /// <param name='names'>The array of names if found. If not found, then names[0] = "Unknown" and names[1] = "User"</param> |
381 | private bool TryGetUserNamesFromServices(UUID uuid, string[] names) | 386 | private bool TryGetUserNamesFromServices(UUID uuid, string[] names) |
382 | { | 387 | { |
388 | if(m_Scenes.Count <= 0) | ||
389 | return false; | ||
390 | |||
383 | UserAccount account = m_Scenes[0].UserAccountService.GetUserAccount(UUID.Zero, uuid); | 391 | UserAccount account = m_Scenes[0].UserAccountService.GetUserAccount(UUID.Zero, uuid); |
384 | 392 | ||
385 | if (account != null) | 393 | if (account != null) |
@@ -445,6 +453,9 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement | |||
445 | 453 | ||
446 | public UUID GetUserIdByName(string firstName, string lastName) | 454 | public UUID GetUserIdByName(string firstName, string lastName) |
447 | { | 455 | { |
456 | if(m_Scenes.Count <= 0) | ||
457 | return UUID.Zero; | ||
458 | |||
448 | // TODO: Optimize for reverse lookup if this gets used by non-console commands. | 459 | // TODO: Optimize for reverse lookup if this gets used by non-console commands. |
449 | lock (m_UserCache) | 460 | lock (m_UserCache) |
450 | { | 461 | { |
@@ -555,6 +566,12 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement | |||
555 | #region Cache Management | 566 | #region Cache Management |
556 | public bool GetUser(UUID uuid, out UserData userdata) | 567 | public bool GetUser(UUID uuid, out UserData userdata) |
557 | { | 568 | { |
569 | if(m_Scenes.Count <= 0) | ||
570 | { | ||
571 | userdata = new UserData(); | ||
572 | return false; | ||
573 | } | ||
574 | |||
558 | lock (m_UserCache) | 575 | lock (m_UserCache) |
559 | { | 576 | { |
560 | if (m_UserCache.TryGetValue(uuid, out userdata)) | 577 | if (m_UserCache.TryGetValue(uuid, out userdata)) |
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/MapImage/MapImageServiceModule.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/MapImage/MapImageServiceModule.cs index ef0eec5..f40541e 100644 --- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/MapImage/MapImageServiceModule.cs +++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/MapImage/MapImageServiceModule.cs | |||
@@ -94,7 +94,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.MapImage | |||
94 | if (config == null) | 94 | if (config == null) |
95 | return; | 95 | return; |
96 | 96 | ||
97 | int refreshminutes = Convert.ToInt32(config.GetString("RefreshTime", "60")); | 97 | int refreshminutes = Convert.ToInt32(config.GetString("RefreshTime")); |
98 | if (refreshminutes < 0) | 98 | if (refreshminutes < 0) |
99 | { | 99 | { |
100 | m_log.WarnFormat("[MAP IMAGE SERVICE MODULE]: Negative refresh time given in config. Module disabled."); | 100 | m_log.WarnFormat("[MAP IMAGE SERVICE MODULE]: Negative refresh time given in config. Module disabled."); |
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs index cdc605b..ca94f42 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs | |||
@@ -112,7 +112,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
112 | float rotation = 0f; | 112 | float rotation = 0f; |
113 | Vector3 rotationCenter = new Vector3(Scene.RegionInfo.RegionSizeX / 2f, Scene.RegionInfo.RegionSizeY / 2f, 0); | 113 | Vector3 rotationCenter = new Vector3(Scene.RegionInfo.RegionSizeX / 2f, Scene.RegionInfo.RegionSizeY / 2f, 0); |
114 | Vector3 boundingOrigin = new Vector3(0f, 0f, 0f); | 114 | Vector3 boundingOrigin = new Vector3(0f, 0f, 0f); |
115 | Vector3 boundingSize = new Vector3(Scene.RegionInfo.RegionSizeX, Scene.RegionInfo.RegionSizeY, Constants.RegionHeight); | 115 | Vector3 boundingSize = new Vector3(Scene.RegionInfo.RegionSizeX, Scene.RegionInfo.RegionSizeY, float.MaxValue); |
116 | bool debug = false; | 116 | bool debug = false; |
117 | 117 | ||
118 | OptionSet options = new OptionSet(); | 118 | OptionSet options = new OptionSet(); |
@@ -183,7 +183,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
183 | { | 183 | { |
184 | try | 184 | try |
185 | { | 185 | { |
186 | boundingSize = v == null ? new Vector3(Scene.RegionInfo.RegionSizeX, Scene.RegionInfo.RegionSizeY, Constants.RegionHeight) : Vector3.Parse(v); | 186 | boundingSize = v == null ? new Vector3(Scene.RegionInfo.RegionSizeX, Scene.RegionInfo.RegionSizeY, float.MaxValue) : Vector3.Parse(v); |
187 | } | 187 | } |
188 | catch | 188 | catch |
189 | { | 189 | { |