summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkpdecker <kpdecker@gmail.com>2015-09-23 22:08:59 -0500
committerkpdecker <kpdecker@gmail.com>2015-09-23 22:08:59 -0500
commit94c840b6edd426947e1cafa1ff6d6b90e63dbb9a (patch)
tree4a56681553a8b4da7f0300979bad5c66b22709d6
parent861d6f7b8d8149657c5396ed6b2e2930294edd4e (diff)
downloadhandlebars.js-94c840b6edd426947e1cafa1ff6d6b90e63dbb9a.zip
handlebars.js-94c840b6edd426947e1cafa1ff6d6b90e63dbb9a.tar.gz
handlebars.js-94c840b6edd426947e1cafa1ff6d6b90e63dbb9a.tar.bz2
Create data frame for @partial-block
Fixes #1099
-rw-r--r--lib/handlebars/runtime.js1
-rw-r--r--spec/regressions.js8
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');
+ });
});