From 94c840b6edd426947e1cafa1ff6d6b90e63dbb9a Mon Sep 17 00:00:00 2001 From: kpdecker Date: Wed, 23 Sep 2015 22:08:59 -0500 Subject: Create data frame for @partial-block Fixes #1099 --- lib/handlebars/runtime.js | 1 + spec/regressions.js | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/lib/handlebars/runtime.js b/lib/handlebars/runtime.js index 52d9b94..b47d961 100644 --- a/lib/handlebars/runtime.js +++ b/lib/handlebars/runtime.js @@ -230,6 +230,7 @@ export function invokePartial(partial, context, options) { let partialBlock; if (options.fn && options.fn !== noop) { + options.data = createFrame(options.data); partialBlock = options.data['partial-block'] = options.fn; if (partialBlock.partials) { diff --git a/spec/regressions.js b/spec/regressions.js index bd0a111..83765a2 100644 --- a/spec/regressions.js +++ b/spec/regressions.js @@ -239,4 +239,12 @@ describe('Regressions', function() { }; shouldCompileToWithPartials(string, [{}, {}, partials], true, 'doctypelayoutsubcontent'); }); + it('GH-1099: should support greater than 3 nested levels of inline partials', function() { + var string = '{{#> layout}}Outer{{/layout}}'; + var partials = { + layout: '{{#> inner}}Inner{{/inner}}{{> @partial-block }}', + inner: '' + }; + shouldCompileToWithPartials(string, [{}, {}, partials], true, 'Outer'); + }); }); -- cgit v1.1