Made toPrettyString slightly smarter and always output valid JSON, no matter what. (May still output altered contents, though.)

This commit is contained in:
Thulinma 2013-08-28 12:48:29 +02:00
parent 2769d3cc6c
commit 31bfc8223e

View file

@ -674,9 +674,9 @@ std::string JSON::Value::toPrettyString(int indentation) const{
break;
}
case STRING: {
for (unsigned int i = 0; i < 5 && i < strVal.size(); ++i){
if (strVal[i] < 32 || strVal[i] > 125){
return JSON::Value((long long int)strVal.size()).asString() + " bytes of binary data";
for (unsigned int i = 0; i < 201 && i < strVal.size(); ++i){
if (strVal[i] < 32 || strVal[i] > 126 || strVal.size() > 200){
return "\""+JSON::Value((long long int)strVal.size()).asString() + " bytes of data\"";
}
}
return string_escape(strVal);