From 5a1c67f8dc62cdf857a04d2ead559b78b840eb7a Mon Sep 17 00:00:00 2001 From: mintrigue Date: Thu, 14 Jun 2012 16:19:44 -0700 Subject: [PATCH] Fixed issue #607: Content-length too large when range request size is greater than full length of content --- modules/org.restlet/src/org/restlet/engine/io/BioUtils.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/modules/org.restlet/src/org/restlet/engine/io/BioUtils.java b/modules/org.restlet/src/org/restlet/engine/io/BioUtils.java index a2b24a9bd2..4ac43ecce4 100644 --- a/modules/org.restlet/src/org/restlet/engine/io/BioUtils.java +++ b/modules/org.restlet/src/org/restlet/engine/io/BioUtils.java @@ -269,7 +269,10 @@ public static long getAvailableSize(Representation representation) { if (representation.getRange() == null) { return representation.getSize(); } else if (representation.getRange().getSize() != Range.SIZE_MAX) { - return representation.getRange().getSize(); + if(representation.hasKnownSize() && representation.getRange().getSize() > representation.getSize()) + return representation.getSize(); + else + return representation.getRange().getSize(); } else if (representation.hasKnownSize()) { if (representation.getRange().getIndex() != Range.INDEX_LAST) { return representation.getSize()