Skip to content

Commit

Permalink
remove EJSON.clone of data context in urlFor, pathFor and linkTo
Browse files Browse the repository at this point in the history
Note, we still clone individual attributes. But for the main data
context we'll just create a new object and merge into it. That we we're
assigning new properties to the new object vs. mutating the original
data context. But we'll avoid the circular reference loops that cause
problems for EJSON.clone.
  • Loading branch information
cmather committed Oct 27, 2014
1 parent 960dc77 commit 1de6d3c
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions lib/helpers.js
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ UI.registerHelper('pathFor', function (options) {
var query = opts.query;
var hash = opts.hash;
var routeName = routeName || opts.route;
var data = EJSON.clone(opts.data || this);
var data = _.extend({}, opts.data || this);

var route = Router.routes[routeName];
warn(route, "pathFor couldn't find a route named " + JSON.stringify(routeName));
Expand Down Expand Up @@ -78,7 +78,7 @@ UI.registerHelper('urlFor', function (options) {
var query = opts.query;
var hash = opts.hash;
var routeName = routeName || opts.route;
var data = EJSON.clone(opts.data || this);
var data = _.extend({}, opts.data || this);

var route = Router.routes[routeName];
warn(route, "urlFor couldn't find a route named " + JSON.stringify(routeName));
Expand Down Expand Up @@ -120,7 +120,7 @@ UI.registerHelper('linkTo', new Blaze.Template('linkTo', function () {
var query = opts.query;
var hash = opts.hash;
var routeName = opts.route;
var data = EJSON.clone(opts.data || DynamicTemplate.getParentDataContext(this));
var data = _.extend({}, opts.data || DynamicTemplate.getParentDataContext(this));
var route = Router.routes[routeName];
var paramKeys;

Expand Down

0 comments on commit 1de6d3c

Please sign in to comment.