Commits

Robert Brewer committed beb6ac5

Fix to 2.1, 2.2, 3.0 for bugs in Range slicing and final boundary. Also made the output match Apache output (CRLFs).

Comments (0)

Files changed (2)

cherrypy/lib/cptools.py

                         yield ("\nContent-range: bytes %s-%s/%s\n\n"
                                % (start, stop - 1, c_len))
                         bodyfile.seek(start)
-                        yield bodyfile.read((stop + 1) - start)
+                        yield bodyfile.read(stop - start)
                         yield "\n"
                     # Final boundary
-                    yield "--" + boundary
+                    yield "--" + boundary + "--"
                 response.body = fileRanges()
         else:
             response.headerMap['Content-Length'] = c_len

cherrypy/test/test_core.py

 Content-type: text/html
 Content-range: bytes 4-6/14
 
-o, w
+o, 
 --%s
 Content-type: text/html
 Content-range: bytes 2-5/14