*/
public function getFileProps( $virtualUrl ) {
$fsFile = $this->getLocalReference( $virtualUrl );
- $mwProps = new MWFileProps( MimeMagic::singleton() );
+ $mwProps = new MWFileProps( MediaWiki\MediaWikiServices::getInstance()->getMimeAnalyzer() );
if ( $fsFile ) {
$props = $mwProps->getPropsFromPath( $fsFile->getPath(), true );
} else {
$path = $this->resolveToStoragePath( $virtualUrl );
$params = [ 'src' => $path, 'headers' => $headers, 'options' => $optHeaders ];
+ // T172851: HHVM does not flush the output properly, causing OOM
+ ob_start( null, 1048576 );
+ ob_implicit_flush( true );
+
$status = $this->newGood();
$status->merge( $this->backend->streamFile( $params ) );
+ ob_end_flush();
+
return $status;
}