From: Timo Tijhof Date: Fri, 4 Sep 2015 03:04:01 +0000 (+0100) Subject: resourceloader: Expose fetch promise in addScript() X-Git-Tag: 1.31.0-rc.0~10109 X-Git-Url: http://git.cyclocoop.org/%22%20.%20generer_url_ecrire%28%22auteur_infos%22%2C%22id_auteur=%24connect_id_auteur%22%29%20.%20%22?a=commitdiff_plain;h=e2741f0ca9b465aa9e57ffd52cf47a1185375a1e;p=lhc%2Fweb%2Fwiklou.git resourceloader: Expose fetch promise in addScript() Prerequisite for T68598 so that callers can handle errors. Change-Id: I214159001e04c4b51453e47299b8e5d5033c258a --- diff --git a/resources/src/mediawiki/mediawiki.js b/resources/src/mediawiki/mediawiki.js index 49c350aabb..b36dbeab89 100644 --- a/resources/src/mediawiki/mediawiki.js +++ b/resources/src/mediawiki/mediawiki.js @@ -1143,10 +1143,10 @@ * * @private * @param {string} src URL to script, will be used as the src attribute in the script tag - * @param {Function} [callback] Callback which will be run when the script is done + * @return {jQuery.Promise} */ - function addScript( src, callback ) { - $.ajax( { + function addScript( src ) { + return $.ajax( { url: src, dataType: 'script', // Force jQuery behaviour to be for crossDomain. Otherwise jQuery would use @@ -1156,7 +1156,7 @@ // text, so we'd need to $.globalEval, which then messes up line numbers. crossDomain: true, cache: true - } ).always( callback ); + } ); } /** @@ -1217,7 +1217,7 @@ return; } - addScript( arr[ i ], function () { + addScript( arr[ i ] ).always( function () { nestedAddScript( arr, callback, i + 1 ); } ); };