diff options
author | Melanie Thielker | 2010-08-25 23:34:39 +0200 |
---|---|---|
committer | Melanie | 2010-08-25 23:19:55 +0100 |
commit | 75e2a2b3ceeb67d3124bc8b4534b6927d288fd57 (patch) | |
tree | 0177d4d9160677d8e6ace1e03740d36283fcdb40 /OpenSim/Framework/Servers/HttpServer/SynchronousRestFormsRequester.cs | |
parent | Make scene object directories more robust and prevent deleted SOP's from (diff) | |
download | opensim-SC-75e2a2b3ceeb67d3124bc8b4534b6927d288fd57.zip opensim-SC-75e2a2b3ceeb67d3124bc8b4534b6927d288fd57.tar.gz opensim-SC-75e2a2b3ceeb67d3124bc8b4534b6927d288fd57.tar.bz2 opensim-SC-75e2a2b3ceeb67d3124bc8b4534b6927d288fd57.tar.xz |
Prevent an object disposed exception that made forms comms unreliable. After
starting an asynchronous write, one should not close the channel it will
be written to synchrnously, that leads to grief.
Diffstat (limited to 'OpenSim/Framework/Servers/HttpServer/SynchronousRestFormsRequester.cs')
-rw-r--r-- | OpenSim/Framework/Servers/HttpServer/SynchronousRestFormsRequester.cs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/OpenSim/Framework/Servers/HttpServer/SynchronousRestFormsRequester.cs b/OpenSim/Framework/Servers/HttpServer/SynchronousRestFormsRequester.cs index acf725a..b2c1c54 100644 --- a/OpenSim/Framework/Servers/HttpServer/SynchronousRestFormsRequester.cs +++ b/OpenSim/Framework/Servers/HttpServer/SynchronousRestFormsRequester.cs | |||
@@ -85,8 +85,13 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
85 | } | 85 | } |
86 | finally | 86 | finally |
87 | { | 87 | { |
88 | if (requestStream != null) | 88 | // If this is closed, it will be disposed internally, |
89 | requestStream.Close(); | 89 | // but the above write is asynchronous and may hit after |
90 | // we're through here. So the thread handling that will | ||
91 | // throw and put us back into the catch above. Isn't | ||
92 | // .NET great? | ||
93 | //if (requestStream != null) | ||
94 | // requestStream.Close(); | ||
90 | // Let's not close this | 95 | // Let's not close this |
91 | //buffer.Close(); | 96 | //buffer.Close(); |
92 | 97 | ||