diff --git a/lib/handlebars/base.js b/lib/handlebars/base.js index c7dc08151..756fb775c 100644 --- a/lib/handlebars/base.js +++ b/lib/handlebars/base.js @@ -202,7 +202,7 @@ function registerDefaultHelpers(instance) { return fn(context, { data: data, - blockParams: Utils.blockParams([context], [data.contextPath]) + blockParams: Utils.blockParams([context], [data && data.contextPath]) }); } else { return options.inverse(this); diff --git a/spec/builtins.js b/spec/builtins.js index 959874326..e5d923f87 100644 --- a/spec/builtins.js +++ b/spec/builtins.js @@ -51,6 +51,12 @@ describe('builtin helpers', function() { var string = '{{#with person as |foo|}}{{foo.first}} {{last}}{{/with}}'; shouldCompileTo(string, {person: {first: 'Alan', last: 'Johnson'}}, 'Alan Johnson'); }); + it('works when data is disabled', function() { + var template = CompilerContext.compile('{{#with person as |foo|}}{{foo.first}} {{last}}{{/with}}', {data: false}); + + var result = template({person: {first: 'Alan', last: 'Johnson'}}); + equals(result, 'Alan Johnson'); + }); }); describe('#each', function() {