diff --git a/core/js/js.js b/core/js/js.js index 60f9cc11a5..2f02ccd04a 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -234,6 +234,7 @@ var OC={ */ generateUrl: function(url, params) { var _build = function (text, vars) { + var vars = vars || []; return text.replace(/{([^{}]*)}/g, function (a, b) { var r = vars[b]; diff --git a/core/js/tests/specs/coreSpec.js b/core/js/tests/specs/coreSpec.js index 166210d031..3af56c490e 100644 --- a/core/js/tests/specs/coreSpec.js +++ b/core/js/tests/specs/coreSpec.js @@ -376,6 +376,9 @@ describe('Core base tests', function() { it('substitutes parameters', function() { expect(OC.generateUrl('apps/files/download{file}', {file: '/Welcome.txt'})).toEqual(OC.webroot + '/index.php/apps/files/download/Welcome.txt'); }); + it('doesnt error out with no params provided', function () { + expect(OC.generateUrl('apps/files/download{file}')).toEqual(OC.webroot + '/index.php/apps/files/download{file}'); + }); }); describe('Main menu mobile toggle', function() { var clock;