1// timer has to be alive so it can't be eaten by the GC. 2var timer; 3 4function handleRequest(request, response) { 5 response.setHeader("Cache-Control", "no-cache", false); 6 response.setHeader("Content-Type", "text/javascript", false); 7 // The "stray" open comment at the end of the write is important! 8 response.write( 9 "document.write(\"<script charset='utf-8' src='script-2_bug597345.js'></script><!--\")" 10 ); 11 response.processAsync(); 12 timer = Components.classes["@mozilla.org/timer;1"].createInstance( 13 Components.interfaces.nsITimer 14 ); 15 timer.initWithCallback( 16 function() { 17 response.finish(); 18 }, 19 200, 20 Components.interfaces.nsITimer.TYPE_ONE_SHOT 21 ); 22} 23