diff options
-rw-r--r-- | lib/handlebars/runtime.js | 1 | ||||
-rw-r--r-- | spec/regressions.js | 8 |
2 files changed, 9 insertions, 0 deletions
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'); + }); }); |