WebRequest: Optimise WebRequest::getPathInfo()
[lhc/web/wiklou.git] / load.php
index 1d6a242..6edb7ec 100644 (file)
--- a/load.php
+++ b/load.php
  * @author Trevor Parscal
  */
 
-use MediaWiki\Logger\LoggerFactory;
+use MediaWiki\MediaWikiServices;
+
+// This endpoint is supposed to be independent of request cookies and other
+// details of the session. Enforce this constraint with respect to session use.
+define( 'MW_NO_SESSION', 1 );
 
 require __DIR__ . '/includes/WebStart.php';
 
@@ -31,16 +35,17 @@ if ( !$wgRequest->checkUrlExtension() ) {
        return;
 }
 
-// Respond to resource loading request.
-// foo()->bar() syntax is not supported in PHP4, and this file needs to *parse* in PHP4.
-$configFactory = ConfigFactory::getDefaultInstance();
-$resourceLoader = new ResourceLoader(
-       $configFactory->makeConfig( 'main' ),
-       LoggerFactory::getInstance( 'resourceloader' )
-);
-$resourceLoader->respond( new ResourceLoaderContext( $resourceLoader, $wgRequest ) );
+// Disable ChronologyProtector so that we don't wait for unrelated MediaWiki
+// writes when getting database connections for ResourceLoader. (T192611)
+MediaWikiServices::getInstance()->getDBLoadBalancerFactory()->disableChronologyProtection();
+
+$resourceLoader = MediaWikiServices::getInstance()->getResourceLoader();
+$context = new ResourceLoaderContext( $resourceLoader, $wgRequest );
+
+// Respond to ResourceLoader request
+$resourceLoader->respond( $context );
 
-Profiler::instance()->setTemplated( true );
+Profiler::instance()->setAllowOutput();
 
 $mediawiki = new MediaWiki();
 $mediawiki->doPostOutputShutdown( 'fast' );