1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/content/media/test/noContentLength.sjs Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,26 @@ 1.4 +// Serve a media file without using content-range header 1.5 +function handleRequest(request, response) 1.6 +{ 1.7 + var file = Components.classes["@mozilla.org/file/directory_service;1"]. 1.8 + getService(Components.interfaces.nsIProperties). 1.9 + get("CurWorkD", Components.interfaces.nsILocalFile); 1.10 + var fis = Components.classes['@mozilla.org/network/file-input-stream;1']. 1.11 + createInstance(Components.interfaces.nsIFileInputStream); 1.12 + var bis = Components.classes["@mozilla.org/binaryinputstream;1"]. 1.13 + createInstance(Components.interfaces.nsIBinaryInputStream); 1.14 + var paths = "tests/content/media/test/320x240.ogv"; 1.15 + var split = paths.split("/"); 1.16 + for(var i = 0; i < split.length; ++i) { 1.17 + file.append(split[i]); 1.18 + } 1.19 + fis.init(file, -1, -1, false); 1.20 + bis.setInputStream(fis); 1.21 + var bytes = bis.readBytes(bis.available()); 1.22 + response.setStatusLine(request.httpVersion, 200, "Content Follows"); 1.23 + response.setHeader("Content-Type", "video/ogg", false); 1.24 + response.write(bytes, bytes.length); 1.25 + // Make this request async to prevent a default Content-Length from being provided. 1.26 + response.processAsync(); 1.27 + response.finish(); 1.28 + bis.close(); 1.29 +}