aboutsummaryrefslogtreecommitdiff
path: root/src/unstable
diff options
context:
space:
mode:
Diffstat (limited to 'src/unstable')
-rw-r--r--src/unstable/json.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/unstable/json.cpp b/src/unstable/json.cpp
index adc2706..06df9b1 100644
--- a/src/unstable/json.cpp
+++ b/src/unstable/json.cpp
@@ -747,7 +747,16 @@ void Bu::Json::writeStr( const Bu::String &sStr, Bu::Stream &sOutput ) const
747 break; 747 break;
748 748
749 default: 749 default:
750 sOutput.write( &(*i), 1 ); 750 if( *i < 32 )
751 sOutput.write(
752 Bu::String("\\u%1").
753 arg( (int32_t)*i, Bu::Fmt::hex(4).fill('0') ).
754 end().getStr(),
755 6
756 );
757 else
758 sOutput.write( &(*i), 1 );
759 break;
751 } 760 }
752 } 761 }
753 sOutput.write("\"", 1 ); 762 sOutput.write("\"", 1 );