aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs
diff options
context:
space:
mode:
authorUbitUmarov2017-05-22 05:53:59 +0100
committerUbitUmarov2017-05-22 05:53:59 +0100
commitfcb435deb4f45511071c7bdb8c4e2290fdc9977f (patch)
tree5aa7ff77e5719fff07cf60babf18ba9bb7da5a9f /OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs
parentdisable keepalive on llHttpRequest (diff)
downloadopensim-SC-fcb435deb4f45511071c7bdb8c4e2290fdc9977f.zip
opensim-SC-fcb435deb4f45511071c7bdb8c4e2290fdc9977f.tar.gz
opensim-SC-fcb435deb4f45511071c7bdb8c4e2290fdc9977f.tar.bz2
opensim-SC-fcb435deb4f45511071c7bdb8c4e2290fdc9977f.tar.xz
make sure we drop requests if DoHTTPGruntWork fails
Diffstat (limited to 'OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs')
-rw-r--r--OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs13
1 files changed, 9 insertions, 4 deletions
diff --git a/OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs b/OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs
index 314719c..8bf98da 100644
--- a/OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs
+++ b/OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs
@@ -244,11 +244,13 @@ namespace OpenSim.Framework.Servers.HttpServer
244 try 244 try
245 { 245 {
246 req.DoHTTPGruntWork(m_server, responsedata); 246 req.DoHTTPGruntWork(m_server, responsedata);
247 byContextDequeue(req);
248 } 247 }
249 catch (ObjectDisposedException) // Browser aborted before we could read body, server closed the stream 248 catch (ObjectDisposedException)
250 { 249 {
251 // Ignore it, no need to reply 250 }
251 finally
252 {
253 byContextDequeue(req);
252 } 254 }
253 return null; 255 return null;
254 }, null); 256 }, null);
@@ -263,12 +265,15 @@ namespace OpenSim.Framework.Servers.HttpServer
263 { 265 {
264 req.DoHTTPGruntWork(m_server, 266 req.DoHTTPGruntWork(m_server,
265 req.PollServiceArgs.NoEvents(req.RequestID, req.PollServiceArgs.Id)); 267 req.PollServiceArgs.NoEvents(req.RequestID, req.PollServiceArgs.Id));
266 byContextDequeue(req);
267 } 268 }
268 catch (ObjectDisposedException) 269 catch (ObjectDisposedException)
269 { 270 {
270 // Ignore it, no need to reply 271 // Ignore it, no need to reply
271 } 272 }
273 finally
274 {
275 byContextDequeue(req);
276 }
272 return null; 277 return null;
273 }, null); 278 }, null);
274 } 279 }