From 1e063f60780506947b39692341e044e0d7910b10 Mon Sep 17 00:00:00 2001 From: Kunal Mehta Date: Thu, 28 Aug 2014 13:16:03 -0700 Subject: [PATCH] resourceloader: Don't register raw modules client-side Prevents modules from depending on raw modules, like 'mediawiki' & 'jquery'. To do that, those modules (as designated by raw=>true), aren't registered in the module registry. Change-Id: Iac37a236964dc40d6259988a0baaaa6331b54ec6 --- includes/resourceloader/ResourceLoaderStartUpModule.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/includes/resourceloader/ResourceLoaderStartUpModule.php b/includes/resourceloader/ResourceLoaderStartUpModule.php index 78fe45c72e..e455ef11ef 100644 --- a/includes/resourceloader/ResourceLoaderStartUpModule.php +++ b/includes/resourceloader/ResourceLoaderStartUpModule.php @@ -207,6 +207,13 @@ class ResourceLoaderStartUpModule extends ResourceLoaderModule { continue; } + if ( $module->isRaw() ) { + // Don't register "raw" modules (like 'jquery' and 'mediawiki') client-side because + // depending on them is illegal anyway and would only lead to them being reloaded + // causing any state to be lost (like jQuery plugins, mw.config etc.) + continue; + } + // getModifiedTime() is supposed to return a UNIX timestamp, but it doesn't always // seem to do that, and custom implementations might forget. Coerce it to TS_UNIX $moduleMtime = wfTimestamp( TS_UNIX, $module->getModifiedTime( $context ) ); -- 2.20.1