diff options
Diffstat (limited to 'OpenSim/Server')
-rw-r--r-- | OpenSim/Server/Handlers/Simulation/AgentHandlers.cs | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs index 4ac477f..9c7f17e 100644 --- a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs +++ b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs | |||
@@ -232,17 +232,16 @@ namespace OpenSim.Server.Handlers.Simulation | |||
232 | httpResponse.KeepAlive = false; | 232 | httpResponse.KeepAlive = false; |
233 | Encoding encoding = Encoding.UTF8; | 233 | Encoding encoding = Encoding.UTF8; |
234 | 234 | ||
235 | Stream inputStream = null; | 235 | if (httpRequest.ContentType != "application/json") |
236 | if (httpRequest.ContentType == "application/x-gzip") | ||
237 | inputStream = new GZipStream(request, CompressionMode.Decompress); | ||
238 | else if (httpRequest.ContentType == "application/json") | ||
239 | inputStream = request; | ||
240 | else // no go | ||
241 | { | 236 | { |
242 | httpResponse.StatusCode = 406; | 237 | httpResponse.StatusCode = 406; |
243 | return encoding.GetBytes("false"); | 238 | return encoding.GetBytes("false"); |
244 | } | 239 | } |
245 | 240 | ||
241 | Stream inputStream = request; | ||
242 | if ((httpRequest.Headers["Content-Encoding"] == "gzip") || (httpRequest.Headers["X-Content-Encoding"] == "gzip")) | ||
243 | inputStream = new GZipStream(inputStream, CompressionMode.Decompress); | ||
244 | |||
246 | StreamReader reader = new StreamReader(inputStream, encoding); | 245 | StreamReader reader = new StreamReader(inputStream, encoding); |
247 | 246 | ||
248 | string requestBody = reader.ReadToEnd(); | 247 | string requestBody = reader.ReadToEnd(); |
@@ -433,11 +432,9 @@ namespace OpenSim.Server.Handlers.Simulation | |||
433 | keysvals.Add("headers", headervals); | 432 | keysvals.Add("headers", headervals); |
434 | keysvals.Add("querystringkeys", querystringkeys); | 433 | keysvals.Add("querystringkeys", querystringkeys); |
435 | 434 | ||
436 | Stream inputStream; | 435 | Stream inputStream = request; |
437 | if (httpRequest.ContentType == "application/x-gzip") | 436 | if ((httpRequest.Headers["Content-Encoding"] == "gzip") || (httpRequest.Headers["X-Content-Encoding"] == "gzip")) |
438 | inputStream = new GZipStream(request, CompressionMode.Decompress); | 437 | inputStream = new GZipStream(inputStream, CompressionMode.Decompress); |
439 | else | ||
440 | inputStream = request; | ||
441 | 438 | ||
442 | Encoding encoding = Encoding.UTF8; | 439 | Encoding encoding = Encoding.UTF8; |
443 | StreamReader reader = new StreamReader(inputStream, encoding); | 440 | StreamReader reader = new StreamReader(inputStream, encoding); |