jenkins-bot has submitted this change and it was merged.
Change subject: mediawiki.inspect: Guard against Object.prototype keys as
module names
......................................................................
mediawiki.inspect: Guard against Object.prototype keys as module names
This avoids conflicts where we confuse an Object method for a
registered module.
Change-Id: Ic32b0706e7dc7755ae096e1be2d5d941347d6123
---
M resources/src/mediawiki/mediawiki.inspect.js
1 file changed, 10 insertions(+), 3 deletions(-)
Approvals:
Krinkle: Looks good to me, approved
jenkins-bot: Verified
diff --git a/resources/src/mediawiki/mediawiki.inspect.js
b/resources/src/mediawiki/mediawiki.inspect.js
index 8e9fc89..4f02e06 100644
--- a/resources/src/mediawiki/mediawiki.inspect.js
+++ b/resources/src/mediawiki/mediawiki.inspect.js
@@ -7,6 +7,9 @@
/*jshint devel:true */
( function ( mw, $ ) {
+ var inspect,
+ hasOwn = Object.prototype.hasOwnProperty;
+
function sortByProperty( array, prop, descending ) {
var order = descending ? -1 : 1;
return array.sort( function ( a, b ) {
@@ -25,7 +28,7 @@
* @class mw.inspect
* @singleton
*/
- var inspect = {
+ inspect = {
/**
* Return a map of all dependency relationships between loaded
modules.
@@ -39,11 +42,15 @@
$.each( modules, function ( moduleIndex, moduleName ) {
var dependencies =
mw.loader.moduleRegistry[moduleName].dependencies || [];
- graph[moduleName] = graph[moduleName] || {
requiredBy: [] };
+ if ( !hasOwn.call( graph, moduleName ) ) {
+ graph[moduleName] = { requiredBy: [] };
+ }
graph[moduleName].requires = dependencies;
$.each( dependencies, function ( depIndex,
depName ) {
- graph[depName] = graph[depName] || {
requiredBy: [] };
+ if ( !hasOwn.call( graph, depName ) ) {
+ graph[depName] = { requiredBy:
[] };
+ }
graph[depName].requiredBy.push(
moduleName );
} );
} );
--
To view, visit https://gerrit.wikimedia.org/r/179447
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Ic32b0706e7dc7755ae096e1be2d5d941347d6123
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Gerrit Patch Uploader <[email protected]>
Gerrit-Reviewer: Gerrit Patch Uploader <[email protected]>
Gerrit-Reviewer: Jack Phoenix <[email protected]>
Gerrit-Reviewer: Krinkle <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits