diff --git a/lib/src/renderer.dart b/lib/src/renderer.dart
index c57f219..36f646b 100644
--- a/lib/src/renderer.dart
+++ b/lib/src/renderer.dart
@@ -166,6 +166,10 @@
        context.close();        
        if (output != null) write(output);
        
+     } else if (lenient) {
+       // We consider all other values as 'true' in lenient mode.
+       _renderWithValue(node, null);
+
      } else {
        throw error('Invalid value type for section, '
          'section: ${node.name}, '
@@ -196,6 +200,10 @@
        // Do nothing.
         //TODO in strict mode should this be an error?
    
+     } else if (lenient) {
+       // We consider all other values as 'true' in lenient mode. Since this
+       // is an inverted section, we do nothing.
+
      } else {
        throw error(
          'Invalid value type for inverse section, '
diff --git a/test/mustache_test.dart b/test/mustache_test.dart
index 9f66358..a4548e5 100644
--- a/test/mustache_test.dart
+++ b/test/mustache_test.dart
@@ -55,6 +55,11 @@
 			expect(ex is TemplateException, isTrue);
 			expect(ex.message, startsWith(BAD_VALUE_SECTION));
 		});
+		test('Invalid value - lenient mode', () {
+			var output = parse('{{#var}}_{{var}}_{{/var}}', lenient: true)
+          .renderString({'var' : 42});
+			expect(output, equals('_42_'));
+		});
 
 		test('True', () {
 			var output = parse('{{#section}}_ok_{{/section}}')
@@ -225,6 +230,11 @@
 			expect(ex is TemplateException, isTrue);
 			expect(ex.message, startsWith(BAD_VALUE_INV_SECTION));
 		});
+		test('Invalid value - lenient mode', () {
+			var output = parse('{{^var}}_ok_{{/var}}', lenient: true)
+          .renderString({'var' : 42});
+			expect(output, equals(''));
+		});
 		test('True', () {
 			var output = parse('{{^section}}_ok_{{/section}}')
 				.renderString({"section": true});
