From 9642453f9e534f25ca919208e920a78a96e4612d Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Tue, 3 Nov 2020 17:56:24 +0000 Subject: [PATCH] viewers do send broken http range start, then flag good assets as bad, another try --- .../Handlers/GetAssets/GetAssetsHandler.cs | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/OpenSim/Capabilities/Handlers/GetAssets/GetAssetsHandler.cs b/OpenSim/Capabilities/Handlers/GetAssets/GetAssetsHandler.cs index ec11cfd926..ce40d29abe 100644 --- a/OpenSim/Capabilities/Handlers/GetAssets/GetAssetsHandler.cs +++ b/OpenSim/Capabilities/Handlers/GetAssets/GetAssetsHandler.cs @@ -142,13 +142,8 @@ namespace OpenSim.Capabilities.Handlers if (Util.TryParseHttpRange(range, out start, out end)) { // viewers do send broken start, then flag good assets as bad - if (start >= asset.Data.Length) - { - start = 0; - end = asset.Data.Length - 1; - //response.StatusCode = (int)HttpStatusCode.RequestedRangeNotSatisfiable; - //return; - } + if (start < asset.Data.Length) + response.StatusCode = (int)HttpStatusCode.OK; else { if (end == -1) @@ -158,12 +153,12 @@ namespace OpenSim.Capabilities.Handlers start = Utils.Clamp(start, 0, end); len = end - start + 1; - } //m_log.Debug("Serving " + start + " to " + end + " of " + texture.Data.Length + " bytes for texture " + texture.ID); response.AddHeader("Content-Range", string.Format("bytes {0}-{1}/{2}", start, end, asset.Data.Length)); response.StatusCode = (int)HttpStatusCode.PartialContent; response.RawBufferStart = start; + } } else response.StatusCode = (int)HttpStatusCode.OK;