summaryrefslogtreecommitdiff
path: root/src/lib/text_decoder.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/text_decoder.cc')
-rw-r--r--src/lib/text_decoder.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/text_decoder.cc b/src/lib/text_decoder.cc
index 0a7bdf95d..6ee6ed079 100644
--- a/src/lib/text_decoder.cc
+++ b/src/lib/text_decoder.cc
@@ -72,10 +72,11 @@ void
TextDecoder::emit_plain_start (ContentTime from, list<dcp::SubtitleString> s)
{
for (auto& i: s) {
- /* We must escape < and > in strings, otherwise they might confuse our subtitle
- renderer (which uses some HTML-esque markup to do bold/italic etc.)
+ /* We must escape some things, otherwise they might confuse our subtitle
+ renderer (which uses entities and some HTML-esque markup to do bold/italic etc.)
*/
string t = i.text ();
+ boost::algorithm::replace_all (t, "&", "&amp;");
boost::algorithm::replace_all (t, "<", "&lt;");
boost::algorithm::replace_all (t, ">", "&gt;");
i.set_text (t);