From 9d4edd6c4d48aa972992e873241292f01a68a428 Mon Sep 17 00:00:00 2001 From: alisdair sullivan Date: Tue, 20 Mar 2012 22:53:18 -0700 Subject: [PATCH] fix for older erts versions where the private space reserved characters are not recognized --- src/jsx_encoder.erl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/jsx_encoder.erl b/src/jsx_encoder.erl index 9e362ee..9c10a19 100644 --- a/src/jsx_encoder.erl +++ b/src/jsx_encoder.erl @@ -161,10 +161,12 @@ clean_string(<>, Acc) C == 16#ffffe orelse C == 16#fffff orelse C == 16#10fffe orelse C == 16#10ffff -> clean_string(Rest, <>); -clean_string(<>, Acc) -> - clean_string(Rest, <>); clean_string(<<237, X, _, Rest/binary>>, Acc) when X >= 160 -> clean_string(Rest, <>); +clean_string(<<239, 183, X, Rest/binary>>, Acc) when X >= 144, X =< 175 -> + clean_string(Rest, <>); +clean_string(<>, Acc) -> + clean_string(Rest, <>); clean_string(<<_, Rest/binary>>, Acc) -> clean_string(Rest, <>); clean_string(<<>>, Acc) -> Acc.