Browse Source

Fix plugin assets not being served by AssetFilter when using FastCGI.

Reponse::send() calls fastcgi_finish_request() which prevents
the output from readfile() being sent to client. Refs #4597
ADmad 11 years ago
parent
commit
0cd96a6f59
1 changed files with 1 additions and 3 deletions
  1. 1 3
      src/Routing/Filter/AssetFilter.php

+ 1 - 3
src/Routing/Filter/AssetFilter.php

@@ -104,7 +104,6 @@ class AssetFilter extends DispatcherFilter {
  * @return void
  */
 	protected function _deliverAsset(Request $request, Response $response, $assetFile, $ext) {
-		ob_start();
 		$compressionEnabled = $response->compress();
 		if ($response->type($ext) === $ext) {
 			$contentType = 'application/octet-stream';
@@ -118,8 +117,7 @@ class AssetFilter extends DispatcherFilter {
 			$response->header('Content-Length', filesize($assetFile));
 		}
 		$response->cache(filemtime($assetFile));
-		$response->send();
-		ob_clean();
+		$response->sendHeaders();
 		readfile($assetFile);
 		if ($compressionEnabled) {
 			ob_end_flush();