summaryrefslogtreecommitdiffstats
path: root/lib/handlebars/compiler/compiler.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/handlebars/compiler/compiler.js')
-rw-r--r--lib/handlebars/compiler/compiler.js10
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/handlebars/compiler/compiler.js b/lib/handlebars/compiler/compiler.js
index c1ef47e..59a425f 100644
--- a/lib/handlebars/compiler/compiler.js
+++ b/lib/handlebars/compiler/compiler.js
@@ -217,13 +217,16 @@ Compiler.prototype = {
this.opcode('pushProgram', program);
this.opcode('pushProgram', inverse);
+ path.strict = true;
this.accept(path);
this.opcode('invokeAmbiguous', name, isBlock);
},
simpleSexpr: function(sexpr) {
- this.accept(sexpr.path);
+ let path = sexpr.path;
+ path.strict = true;
+ this.accept(path);
this.opcode('resolvePossibleLambda');
},
@@ -237,6 +240,7 @@ Compiler.prototype = {
} else if (this.options.knownHelpersOnly) {
throw new Exception('You specified knownHelpersOnly, but used the unknown helper ' + name, sexpr);
} else {
+ path.strict = true;
path.falsy = true;
this.accept(path);
@@ -259,9 +263,9 @@ Compiler.prototype = {
this.opcode('pushContext');
} else if (path.data) {
this.options.data = true;
- this.opcode('lookupData', path.depth, path.parts);
+ this.opcode('lookupData', path.depth, path.parts, path.strict);
} else {
- this.opcode('lookupOnContext', path.parts, path.falsy, scoped);
+ this.opcode('lookupOnContext', path.parts, path.falsy, path.strict, scoped);
}
},