aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs
diff options
context:
space:
mode:
authorDiva Canto2010-10-09 09:09:38 -0700
committerDiva Canto2010-10-09 09:09:38 -0700
commitaeecdd14309cb2947f1c3bcca00b26d671fd1721 (patch)
tree6772b2e6be9f05d920cf82aaab78da7914a0350d /OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs
parentAdded missing sections to StandaloneHypergrid.ini (diff)
parentweird line endings fix commit (diff)
downloadopensim-SC_OLD-aeecdd14309cb2947f1c3bcca00b26d671fd1721.zip
opensim-SC_OLD-aeecdd14309cb2947f1c3bcca00b26d671fd1721.tar.gz
opensim-SC_OLD-aeecdd14309cb2947f1c3bcca00b26d671fd1721.tar.bz2
opensim-SC_OLD-aeecdd14309cb2947f1c3bcca00b26d671fd1721.tar.xz
Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim
Diffstat (limited to 'OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs')
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs12
1 files changed, 10 insertions, 2 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs b/OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs
index a3238df..38151b1 100644
--- a/OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Assets/GetTextureModule.cs
@@ -187,8 +187,16 @@ namespace OpenSim.Region.CoreModules.Avatar.ObjectCaps
187 int start, end; 187 int start, end;
188 if (TryParseRange(range, out start, out end)) 188 if (TryParseRange(range, out start, out end))
189 { 189 {
190 end = Utils.Clamp(end, 1, texture.Data.Length - 1); 190 // Before clamping end make sure we can satisfy it in order to avoid
191 start = Utils.Clamp(start, 0, end - 1); 191 // sending back the last byte instead of an error status
192 if (end >= texture.Data.Length)
193 {
194 response.StatusCode = (int)System.Net.HttpStatusCode.RequestedRangeNotSatisfiable;
195 return;
196 }
197
198 end = Utils.Clamp(end, 0, texture.Data.Length - 1);
199 start = Utils.Clamp(start, 0, end);
192 int len = end - start + 1; 200 int len = end - start + 1;
193 201
194 //m_log.Debug("Serving " + start + " to " + end + " of " + texture.Data.Length + " bytes for texture " + texture.ID); 202 //m_log.Debug("Serving " + start + " to " + end + " of " + texture.Data.Length + " bytes for texture " + texture.ID);