Index: Source/core/html/track/WebVTTTokenizer.cpp |
diff --git a/Source/core/html/track/WebVTTTokenizer.cpp b/Source/core/html/track/WebVTTTokenizer.cpp |
index f290cb67e272ee517297d3703ada8d2b429d9cd1..b799dbf7719637a5ea6f2968d068aab7ed5b1b52 100644 |
--- a/Source/core/html/track/WebVTTTokenizer.cpp |
+++ b/Source/core/html/track/WebVTTTokenizer.cpp |
@@ -33,6 +33,7 @@ |
#include "core/html/track/WebVTTTokenizer.h" |
#include "core/xml/parser/MarkupTokenizerInlines.h" |
+#include "wtf/unicode/CharacterNames.h" |
namespace WebCore { |
@@ -107,6 +108,12 @@ bool WebVTTTokenizer::nextToken(SegmentedString& source, WebVTTToken& token) |
bufferCharacter('<'); |
else if (vectorEqualsString(m_buffer, ">")) |
bufferCharacter('>'); |
+ else if (vectorEqualsString(m_buffer, "&lrm")) |
+ bufferCharacter(leftToRightMark); |
+ else if (vectorEqualsString(m_buffer, "&rlm")) |
+ bufferCharacter(rightToLeftMark); |
+ else if (vectorEqualsString(m_buffer, " ")) |
+ bufferCharacter(noBreakSpace); |
else { |
m_buffer.append(static_cast<LChar>(cc)); |
m_token->appendToCharacter(m_buffer); |