From: Jakob Warkotsch Date: Thu, 18 Oct 2018 16:02:12 +0000 (+0200) Subject: Fix jqueryMsg breaking when passed an undefined param X-Git-Tag: 1.34.0-rc.0~3733^2 X-Git-Url: https://git.cyclocoop.org/admin/?a=commitdiff_plain;h=e2484bc0beb6ed02f159acbf4e6c7da885bf1774;p=lhc%2Fweb%2Fwiklou.git Fix jqueryMsg breaking when passed an undefined param This restores the behavior for undefined params as it was before I445f9194bb8b2ed35baafbda30d1d0d008b64e2c Bug: T207397 Change-Id: I751f01a9b3cd8bb87d7d7def98c918a87ddf81cd --- diff --git a/resources/src/mediawiki.jqueryMsg/mediawiki.jqueryMsg.js b/resources/src/mediawiki.jqueryMsg/mediawiki.jqueryMsg.js index 8b348c8661..082db5ce1a 100644 --- a/resources/src/mediawiki.jqueryMsg/mediawiki.jqueryMsg.js +++ b/resources/src/mediawiki.jqueryMsg/mediawiki.jqueryMsg.js @@ -1377,7 +1377,7 @@ !/\{\{|[<>[&]/.test( this.map.get( this.key ) ) && // jqueryMsg parser is needed when jQuery objects or DOM nodes are passed in as parameters !this.parameters.some( function ( param ) { - return param instanceof $ || param.nodeType !== undefined; + return param instanceof $ || ( param && param.nodeType !== undefined ); } ) ) ) { diff --git a/tests/qunit/suites/resources/mediawiki/mediawiki.jqueryMsg.test.js b/tests/qunit/suites/resources/mediawiki/mediawiki.jqueryMsg.test.js index 405a60f0f1..913022d6e3 100644 --- a/tests/qunit/suites/resources/mediawiki/mediawiki.jqueryMsg.test.js +++ b/tests/qunit/suites/resources/mediawiki/mediawiki.jqueryMsg.test.js @@ -1251,6 +1251,12 @@ 'Passing a DOM node as a parameter to a message without wikitext works correctly' ); + assert.strictEqual( + mw.message( 'param-test', undefined ).parse(), + 'Hello $1', + 'Passing undefined as a parameter to a message does not throw an exception' + ); + assert.strictEqual( mw.message( 'param-test-with-link',