From 307f81c315b911067747a37c3ba8b2040da7ca3d Mon Sep 17 00:00:00 2001 From: Alex Shinn Date: Sat, 31 Jul 2010 21:35:46 +0900 Subject: [PATCH] adding \xNN escapes to string literals --- sexp.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sexp.c b/sexp.c index 2242f734..5f38669a 100644 --- a/sexp.c +++ b/sexp.c @@ -1371,6 +1371,13 @@ sexp sexp_read_string (sexp ctx, sexp in) { case 'n': c = '\n'; break; case 'r': c = '\r'; break; case 't': c = '\t'; break; + case 'x': + c = sexp_read_char(ctx, in); + if (isxdigit(c)) { + c = digit_value(c)*16 + digit_value(sexp_read_char(ctx, in)); + } else { + sexp_push_char(ctx, c, in); c = 'x'; + } } } if (c == EOF) {