Gerrit Patch Uploader has uploaded a new change for review. https://gerrit.wikimedia.org/r/179447
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(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core refs/changes/47/179447/1 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: newchange Gerrit-Change-Id: Ic32b0706e7dc7755ae096e1be2d5d941347d6123 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/core Gerrit-Branch: master Gerrit-Owner: Gerrit Patch Uploader <gerritpatchuploa...@gmail.com> Gerrit-Reviewer: Gerrit Patch Uploader <gerritpatchuploa...@gmail.com> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits