diff options
Diffstat (limited to 'src/uscxml/Message.cpp')
-rw-r--r-- | src/uscxml/Message.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/uscxml/Message.cpp b/src/uscxml/Message.cpp index 4591484..b664fd1 100644 --- a/src/uscxml/Message.cpp +++ b/src/uscxml/Message.cpp @@ -682,7 +682,15 @@ std::string Data::toJSON(const Data& data) { os << "]"; } else if (data.atom.size() > 0) { if (data.type == Data::VERBATIM) { - os << "\"" << data.atom << "\""; + os << "\""; + for (int i = 0; i < data.atom.size(); i++) { + // escape string + if (data.atom[i] == '"') { + os << '\\'; + } + os << data.atom[i]; + } + os << "\""; } else { os << data.atom; } |