From 4bf1b76a71c7665fb9443708f01a6b9b9f1ddd26 Mon Sep 17 00:00:00 2001 From: Morten Henriksen Date: Thu, 14 Mar 2013 11:50:36 +0100 Subject: [PATCH 1/3] Fixed #801 --- packages/handlebars/evaluate.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/handlebars/evaluate.js b/packages/handlebars/evaluate.js index a9e7ddd19c..1accbc99c0 100644 --- a/packages/handlebars/evaluate.js +++ b/packages/handlebars/evaluate.js @@ -35,7 +35,7 @@ Handlebars._default_helpers = { if (data && data.length > 0) return _.map(data, function(x, i) { // infer a branch key from the data - var branch = (x._id || (typeof x === 'string' ? x : null) || + var branch = ((x && x._id) || (typeof x === 'string' ? x : null) || Spark.UNIQUE_LABEL); return Spark.labelBranch(branch, function() { return options.fn(x); From 30643c5008f0e12d8fe6cee0ade214950c635f0c Mon Sep 17 00:00:00 2001 From: Morten Henriksen Date: Thu, 14 Mar 2013 14:03:39 +0100 Subject: [PATCH 2/3] Added som tests for fix #801 --- packages/templating/templating_tests.html | 5 +++++ packages/templating/templating_tests.js | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/packages/templating/templating_tests.html b/packages/templating/templating_tests.html index d44420cd02..d57f9ce36b 100644 --- a/packages/templating/templating_tests.html +++ b/packages/templating/templating_tests.html @@ -346,3 +346,8 @@ + + + diff --git a/packages/templating/templating_tests.js b/packages/templating/templating_tests.js index 5c3d9717e5..dd56e22fa1 100644 --- a/packages/templating/templating_tests.js +++ b/packages/templating/templating_tests.js @@ -1068,3 +1068,10 @@ Tinytest.add("templating - tricky branch labels", function (test) { div.kill(); Meteor.flush(); }); + +Tinytest.add('templating - each falsy Issue #801', function (test) { + //Minor test for issue #801 + Template.test_template_issue801.values = function() { return [1,2,null,undefined]; }; + var frag = Meteor.render(Template.test_template_issue801); + test.equal(canonicalizeHtml(DomUtils.fragmentToHtml(frag)), "12null"); +}); From 0ead1fbf4123d270e164a38d5734298dc053addd Mon Sep 17 00:00:00 2001 From: Morten Henriksen Date: Thu, 14 Mar 2013 14:32:06 +0100 Subject: [PATCH 3/3] Fixed reactive each Mentioned by Chris Mather on google talk --- packages/templating/deftemplate.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/templating/deftemplate.js b/packages/templating/deftemplate.js index 4e459883bd..8578e1ca18 100644 --- a/packages/templating/deftemplate.js +++ b/packages/templating/deftemplate.js @@ -18,7 +18,7 @@ arg, function (item) { return Spark.labelBranch( - item._id || Spark.UNIQUE_LABEL, function () { + (item && item._id) || Spark.UNIQUE_LABEL, function () { var html = Spark.isolate(_.bind(options.fn, null, item)); return Spark.setDataContext(item, html); });