neobytes/src/univalue/lib
Wladimir J. van der Laan 3f7f64a66b univalue: Handle UTF-8
Input: read and validate full UTF-8, both Basic Multilingual Plane
and extended characters.
Collate surrogate pairs as specified in RFC467.
This ensures that UTF-8 strings that reach the application are
always valid.

Output: Assume UTF-8 strings provided for output are valid.
The escaping was broken, fix this by not encoding UTF-8 characters with \u.
Simply write them to the output stream as-is.

This is the right thing to do. See https://www.ietf.org/rfc/rfc4627.txt:

    "JSON text SHALL be encoded in Unicode.  The default encoding is UTF-8."

Fixes #16.
Also add tests for the new functionality.
2016-05-31 04:31:02 +03:00
..
.gitignore Merge commit '313e7f5c89d6e72e06efe9255089765b4c5815fe' into HEAD 2015-10-09 11:37:00 +02:00
univalue_escapes.h Merge commit '982709199f1b4e9e35211c419a81938f9f1dd4ed' into bitcoin 2015-12-02 12:28:48 +01:00
univalue_read.cpp univalue: Handle UTF-8 2016-05-31 04:31:02 +03:00
univalue_utffilter.h univalue: Handle UTF-8 2016-05-31 04:31:02 +03:00
univalue_write.cpp univalue: Handle UTF-8 2016-05-31 04:31:02 +03:00
univalue.cpp Merge commit '982709199f1b4e9e35211c419a81938f9f1dd4ed' into bitcoin 2015-12-02 12:28:48 +01:00