diff options
Diffstat (limited to 'OpenSim/Region/Environment/Modules')
-rw-r--r-- | OpenSim/Region/Environment/Modules/ChatModule.cs | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/OpenSim/Region/Environment/Modules/ChatModule.cs b/OpenSim/Region/Environment/Modules/ChatModule.cs index 518454c..a438ae6 100644 --- a/OpenSim/Region/Environment/Modules/ChatModule.cs +++ b/OpenSim/Region/Environment/Modules/ChatModule.cs | |||
@@ -188,7 +188,8 @@ namespace OpenSim.Region.Environment.Modules | |||
188 | }); | 188 | }); |
189 | } | 189 | } |
190 | } | 190 | } |
191 | } | 191 | } |
192 | Thread.Sleep(50); | ||
192 | } | 193 | } |
193 | } | 194 | } |
194 | 195 | ||
@@ -245,10 +246,20 @@ namespace OpenSim.Region.Environment.Modules | |||
245 | m_log.Verbose("CHAT", fromName + " (" + e.Channel + " @ " + scene.RegionInfo.RegionName + ") " + typeName + ": " + e.Message); | 246 | m_log.Verbose("CHAT", fromName + " (" + e.Channel + " @ " + scene.RegionInfo.RegionName + ") " + typeName + ": " + e.Message); |
246 | 247 | ||
247 | if (connected) | 248 | if (connected) |
248 | { | 249 | { |
249 | m_ircWriter.WriteLine("PRIVMSG " + m_channel + " :" + "<" + fromName + " in " + scene.RegionInfo.RegionName + ">: " + | 250 | try |
250 | e.Message); | 251 | { |
251 | m_ircWriter.Flush(); | 252 | m_ircWriter.WriteLine("PRIVMSG " + m_channel + " :" + "<" + fromName + " in " + scene.RegionInfo.RegionName + ">: " + |
253 | e.Message); | ||
254 | m_ircWriter.Flush(); | ||
255 | } | ||
256 | catch (IOException) | ||
257 | { | ||
258 | m_log.Error("IRC","Disconnected from IRC server."); | ||
259 | listener.Abort(); | ||
260 | pingSender.Abort(); | ||
261 | connected = false; | ||
262 | } | ||
252 | } | 263 | } |
253 | 264 | ||
254 | if (e.Channel == 0) | 265 | if (e.Channel == 0) |