xxgreg / mustache

Mustache template Dart library
BSD 2-Clause "Simplified" License
57 stars 59 forks source link

Stack overflow on recursion #34

Open sestegra opened 6 years ago

sestegra commented 6 years ago

Following test throws stack overflow exception.

test('recursion', () {
  var output = _partialTest({
    'content': "X",
    'nodes': [
      {'content': "Y", 'nodes': [
        {'content': "Y1"},
        {'content': "Y2"},
      ]}
    ]
  }, {
    'root': '{{>node}}',
    'node': '{{content}}<{{#nodes}}{{>node}}{{/nodes}}>'
  }, 'root', lenient: true);
  expect(output, equals('X<Y<Y1Y2>>'));
});