void VTTParser::collectMetadataHeader(const String& line) { // WebVTT header parsing (WebVTT parser algorithm step 12) DEFINE_STATIC_LOCAL(const AtomicString, regionHeaderName, ("Region", AtomicString::ConstructFromLiteral)); // The only currently supported header is the "Region" header. if (!RuntimeEnabledFeatures::webVTTRegionsEnabled()) return; // Step 12.4 If line contains the character ":" (A U+003A COLON), then set metadata's // name to the substring of line before the first ":" character and // metadata's value to the substring after this character. size_t colonPosition = line.find(':'); if (colonPosition == kNotFound) return; String headerName = line.substring(0, colonPosition); // Steps 12.5 If metadata's name equals "Region": if (headerName == regionHeaderName) { String headerValue = line.substring(colonPosition + 1); // Steps 12.5.1 - 12.5.11 Region creation: Let region be a new text track region [...] createNewRegion(headerValue); } }
void WebVTTParser::collectMetadataHeader(const String& line) { #if ENABLE(WEBVTT_REGIONS) // WebVTT header parsing (WebVTT parser algorithm step 12) DEPRECATED_DEFINE_STATIC_LOCAL(const AtomicString, regionHeaderName, ("Region", AtomicString::ConstructFromLiteral)); // Step 12.4 If line contains the character ":" (A U+003A COLON), then set metadata's // name to the substring of line before the first ":" character and // metadata's value to the substring after this character. size_t colonPosition = line.find(':'); if (colonPosition == notFound) return; String headerName = line.substring(0, colonPosition); // Step 12.5 If metadata's name equals "Region": if (headerName == regionHeaderName) { String headerValue = line.substring(colonPosition + 1, line.length() - 1); // Steps 12.5.1 - 12.5.11 Region creation: Let region be a new text track region [...] createNewRegion(headerValue); } #else UNUSED_PARAM(line); #endif }
void WebVTTParser::collectHeader(const String& line) { // 4.1 Extension of WebVTT header parsing (11 - 15) DEFINE_STATIC_LOCAL(const AtomicString, regionHeaderName, ("Region", AtomicString::ConstructFromLiteral)); // 15.4 If line contains the character ":" (A U+003A COLON), then set metadata's // name to the substring of line before the first ":" character and // metadata's value to the substring after this character. if (!line.contains(":")) return; unsigned colonPosition = line.find(":"); m_currentHeaderName = line.substring(0, colonPosition); // 15.5 If metadata's name equals "Region": if (m_currentHeaderName == regionHeaderName) { m_currentHeaderValue = line.substring(colonPosition + 1, line.length() - 1); // 15.5.1 - 15.5.8 Region creation: Let region be a new text track region [...] createNewRegion(); } }