aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Application/OpenSim.cs19
-rw-r--r--OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs6
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs2
-rw-r--r--OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs50
4 files changed, 71 insertions, 6 deletions
diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs
index 3a1a8c7..832d93c 100644
--- a/OpenSim/Region/Application/OpenSim.cs
+++ b/OpenSim/Region/Application/OpenSim.cs
@@ -250,8 +250,10 @@ namespace OpenSim
250 + "If level <= 0 then no extra http logging is done.\n", 250 + "If level <= 0 then no extra http logging is done.\n",
251 Debug); 251 Debug);
252 252
253 m_console.Commands.AddCommand("region", false, "debug teleport", "debug teleport", "Toggle teleport route debugging", Debug);
254
253 m_console.Commands.AddCommand("region", false, "debug scene", 255 m_console.Commands.AddCommand("region", false, "debug scene",
254 "debug scene <cripting> <collisions> <physics>", 256 "debug scene <scripting> <collisions> <physics>",
255 "Turn on scene debugging", Debug); 257 "Turn on scene debugging", Debug);
256 258
257 m_console.Commands.AddCommand("region", false, "change region", 259 m_console.Commands.AddCommand("region", false, "change region",
@@ -948,6 +950,21 @@ namespace OpenSim
948 950
949 break; 951 break;
950 952
953 case "teleport":
954 foreach(Scene s in m_sceneManager.Scenes)
955 {
956 if (s.DEBUG)
957 {
958 s.DEBUG = false;
959 MainConsole.Instance.Output("Teleport debugging is disabled!");
960 }
961 else{
962 s.DEBUG = true;
963 MainConsole.Instance.Output("Teleport debugging is enabled!");
964 }
965 }
966 break;
967
951 default: 968 default:
952 MainConsole.Instance.Output("Unknown debug command"); 969 MainConsole.Instance.Output("Unknown debug command");
953 break; 970 break;
diff --git a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
index d68d28c..8d503bd 100644
--- a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
@@ -149,7 +149,7 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
149 // Process the baked texture array 149 // Process the baked texture array
150 if (textureEntry != null) 150 if (textureEntry != null)
151 { 151 {
152 m_log.InfoFormat("[AVFACTORY]: received texture update for {0}", sp.UUID); 152 m_log.InfoFormat("[AVFACTORY]: Received texture update for {0} {1}", sp.Name, sp.UUID);
153 153
154// WriteBakedTexturesReport(sp, m_log.DebugFormat); 154// WriteBakedTexturesReport(sp, m_log.DebugFormat);
155 155
@@ -315,7 +315,7 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
315 return false; 315 return false;
316 } 316 }
317 317
318 m_log.DebugFormat("[AVFACTORY]: Completed texture check for {0}", sp.UUID); 318 m_log.DebugFormat("[AVFACTORY]: Completed texture check for {0} {1}", sp.Name, sp.UUID);
319 319
320 // If we only found default textures, then the appearance is not cached 320 // If we only found default textures, then the appearance is not cached
321 return (defonly ? false : true); 321 return (defonly ? false : true);
@@ -626,4 +626,4 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
626 outputAction("{0} baked appearance texture is {1}", sp.Name, bakedTextureValid ? "OK" : "corrupt"); 626 outputAction("{0} baked appearance texture is {1}", sp.Name, bakedTextureValid ? "OK" : "corrupt");
627 } 627 }
628 } 628 }
629} 629} \ No newline at end of file
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index ed6f68a..f03c345 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -651,8 +651,6 @@ namespace OpenSim.Region.Framework.Scenes
651 // 651 //
652 IConfig startupConfig = m_config.Configs["Startup"]; 652 IConfig startupConfig = m_config.Configs["Startup"];
653 653
654 DEBUG = startupConfig.GetBoolean("DEBUG", false);
655
656 m_defaultDrawDistance = startupConfig.GetFloat("DefaultDrawDistance",m_defaultDrawDistance); 654 m_defaultDrawDistance = startupConfig.GetFloat("DefaultDrawDistance",m_defaultDrawDistance);
657 m_useBackup = startupConfig.GetBoolean("UseSceneBackup", m_useBackup); 655 m_useBackup = startupConfig.GetBoolean("UseSceneBackup", m_useBackup);
658 if (!m_useBackup) 656 if (!m_useBackup)
diff --git a/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs b/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs
index 39cd4c9..2369d94 100644
--- a/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs
@@ -27,6 +27,7 @@
27 27
28using System; 28using System;
29using System.Collections.Generic; 29using System.Collections.Generic;
30using System.Linq;
30using System.Reflection; 31using System.Reflection;
31using System.Text; 32using System.Text;
32using log4net; 33using log4net;
@@ -124,6 +125,13 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
124 + "\nIf the viewer has not yet sent the server any texture ids then nothing will happen" 125 + "\nIf the viewer has not yet sent the server any texture ids then nothing will happen"
125 + "\nsince requests can only be made for ids that the client has already sent us", 126 + "\nsince requests can only be made for ids that the client has already sent us",
126 HandleRebakeAppearanceCommand); 127 HandleRebakeAppearanceCommand);
128
129 scene.AddCommand(
130 this, "appearance find",
131 "appearance find <uuid-or-start-of-uuid>",
132 "Find out which avatar uses the given asset as a baked texture, if any.",
133 "You can specify just the beginning of the uuid, e.g. 2008a8d. A longer UUID must be in dashed format.",
134 HandleFindAppearanceCommand);
127 } 135 }
128 136
129 private void HandleSendAppearanceCommand(string module, string[] cmd) 137 private void HandleSendAppearanceCommand(string module, string[] cmd)
@@ -254,5 +262,47 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance
254 } 262 }
255 } 263 }
256 } 264 }
265
266 protected void HandleFindAppearanceCommand(string module, string[] cmd)
267 {
268 if (cmd.Length != 3)
269 {
270 MainConsole.Instance.OutputFormat("Usage: appearance find <uuid-or-start-of-uuid>");
271 return;
272 }
273
274 string rawUuid = cmd[2];
275
276 HashSet<ScenePresence> matchedAvatars = new HashSet<ScenePresence>();
277
278 lock (m_scenes)
279 {
280 foreach (Scene scene in m_scenes.Values)
281 {
282 scene.ForEachRootScenePresence(
283 sp =>
284 {
285 Dictionary<BakeType, Primitive.TextureEntryFace> bakedFaces = scene.AvatarFactory.GetBakedTextureFaces(sp.UUID);
286 foreach (Primitive.TextureEntryFace face in bakedFaces.Values)
287 {
288 if (face != null && face.TextureID.ToString().StartsWith(rawUuid))
289 matchedAvatars.Add(sp);
290 }
291 });
292 }
293 }
294
295 if (matchedAvatars.Count == 0)
296 {
297 MainConsole.Instance.OutputFormat("{0} did not match any baked avatar textures in use", rawUuid);
298 }
299 else
300 {
301 MainConsole.Instance.OutputFormat(
302 "{0} matched {1}",
303 rawUuid,
304 string.Join(", ", matchedAvatars.ToList().ConvertAll<string>(sp => sp.Name).ToArray()));
305 }
306 }
257 } 307 }
258} \ No newline at end of file 308} \ No newline at end of file