diff options
author | Tedd Hansen | 2008-01-18 23:45:16 +0000 |
---|---|---|
committer | Tedd Hansen | 2008-01-18 23:45:16 +0000 |
commit | d23222cbc69f1c8e40c2e9509347e0a1a2734860 (patch) | |
tree | e4d61a437d068c6070d26ebc5e4f2d31aa0873e5 /OpenSim/Region/Application | |
parent | * Return of the avatar wobble. (diff) | |
download | opensim-SC_OLD-d23222cbc69f1c8e40c2e9509347e0a1a2734860.zip opensim-SC_OLD-d23222cbc69f1c8e40c2e9509347e0a1a2734860.tar.gz opensim-SC_OLD-d23222cbc69f1c8e40c2e9509347e0a1a2734860.tar.bz2 opensim-SC_OLD-d23222cbc69f1c8e40c2e9509347e0a1a2734860.tar.xz |
Added block for scenario: global exception handler called in loop when exception happens inside global exception handler
Added InnerException to output
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Application/Application.cs | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/OpenSim/Region/Application/Application.cs b/OpenSim/Region/Application/Application.cs index d253775..bf44274 100644 --- a/OpenSim/Region/Application/Application.cs +++ b/OpenSim/Region/Application/Application.cs | |||
@@ -80,6 +80,7 @@ namespace OpenSim | |||
80 | } | 80 | } |
81 | } | 81 | } |
82 | 82 | ||
83 | private static bool _IsHandlingException = false; // Make sure we don't go recursive on ourself | ||
83 | /// <summary> | 84 | /// <summary> |
84 | /// Global exception handler -- all unhandlet exceptions end up here :) | 85 | /// Global exception handler -- all unhandlet exceptions end up here :) |
85 | /// </summary> | 86 | /// </summary> |
@@ -87,6 +88,9 @@ namespace OpenSim | |||
87 | /// <param name="e"></param> | 88 | /// <param name="e"></param> |
88 | private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) | 89 | private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) |
89 | { | 90 | { |
91 | if (_IsHandlingException) | ||
92 | return; | ||
93 | _IsHandlingException = true; | ||
90 | // TODO: Add config option to allow users to turn off error reporting | 94 | // TODO: Add config option to allow users to turn off error reporting |
91 | // TODO: Post error report (disabled for now) | 95 | // TODO: Post error report (disabled for now) |
92 | 96 | ||
@@ -96,7 +100,10 @@ namespace OpenSim | |||
96 | msg += "\r\n"; | 100 | msg += "\r\n"; |
97 | 101 | ||
98 | msg += "Exception: " + e.ExceptionObject.ToString() + "\r\n"; | 102 | msg += "Exception: " + e.ExceptionObject.ToString() + "\r\n"; |
99 | 103 | Exception ex = (Exception)e.ExceptionObject; | |
104 | if (ex.InnerException != null) | ||
105 | msg += "InnerException: " + ex.InnerException.ToString() + "\r\n"; | ||
106 | |||
100 | msg += "\r\n"; | 107 | msg += "\r\n"; |
101 | msg += "Application is terminating: " + e.IsTerminating.ToString() + "\r\n"; | 108 | msg += "Application is terminating: " + e.IsTerminating.ToString() + "\r\n"; |
102 | 109 | ||
@@ -118,6 +125,8 @@ namespace OpenSim | |||
118 | { | 125 | { |
119 | // Ignore | 126 | // Ignore |
120 | } | 127 | } |
128 | |||
129 | _IsHandlingException=false; | ||
121 | } | 130 | } |
122 | 131 | ||
123 | } | 132 | } |