aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2013-03-30 01:42:00 +0000
committerDavid Robillard <d@drobilla.net>2013-03-30 01:42:00 +0000
commit2d6b2c5560ec27e61b2cfdbb50b91b1e96d04ed0 (patch)
tree58c74f129e41275c7937fb834962f2f8da46f4ce
parent0c9f5eb2eeb4927e51f43ac2cba85cebca873234 (diff)
downloadserd-2d6b2c5560ec27e61b2cfdbb50b91b1e96d04ed0.tar.gz
serd-2d6b2c5560ec27e61b2cfdbb50b91b1e96d04ed0.tar.bz2
serd-2d6b2c5560ec27e61b2cfdbb50b91b1e96d04ed0.zip
Don't escape backspace or form feed for ntriples.
git-svn-id: http://svn.drobilla.net/serd/trunk@440 490d8e77-9747-427b-9fa3-0b8f29cee8a0
-rw-r--r--src/writer.c8
-rw-r--r--tests/good/test-backspace.nt6
2 files changed, 9 insertions, 5 deletions
diff --git a/src/writer.c b/src/writer.c
index 83ad6e20..5b896f94 100644
--- a/src/writer.c
+++ b/src/writer.c
@@ -305,11 +305,15 @@ write_text(SerdWriter* writer, TextContext ctx,
case '\n': len += sink("\\n", 2, writer); continue;
case '\r': len += sink("\\r", 2, writer); continue;
case '\t': len += sink("\\t", 2, writer); continue;
- case '\b': len += sink("\\b", 2, writer); continue;
- case '\f': len += sink("\\f", 2, writer); continue;
case '"': len += sink("\\\"", 2, writer); continue;
default: break;
}
+ if (writer->syntax != SERD_NTRIPLES) {
+ switch (in) {
+ case '\b': len += sink("\\b", 2, writer); continue;
+ case '\f': len += sink("\\f", 2, writer); continue;
+ }
+ }
}
size_t size = 0;
diff --git a/tests/good/test-backspace.nt b/tests/good/test-backspace.nt
index 3a110da6..3dfffa38 100644
--- a/tests/good/test-backspace.nt
+++ b/tests/good/test-backspace.nt
@@ -1,3 +1,3 @@
-<http://example.org/thing> <http://example.org/label> "\b" .
-<http://example.org/thing> <http://example.org/label> "\b" .
-<http://example.org/thing> <http://example.org/label> "\n\b\n" .
+<http://example.org/thing> <http://example.org/label> "\u0008" .
+<http://example.org/thing> <http://example.org/label> "\u0008" .
+<http://example.org/thing> <http://example.org/label> "\n\u0008\n" .