From d704110228aae2bc7cd2ebc8ccd23d78be4fef9b Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Thu, 2 Jul 2015 13:38:50 +0100 Subject: Fix font parse error. --- src/subrip_reader.cc | 1 + test/subrip_reader_test.cc | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/src/subrip_reader.cc b/src/subrip_reader.cc index 134ca3e..644a23c 100644 --- a/src/subrip_reader.cc +++ b/src/subrip_reader.cc @@ -196,6 +196,7 @@ SubripReader::convert_line (string t, int line_number, Time from, Time to) colours.push_back (p.colour); } } else if (tag == "/font") { + maybe_content (p); colours.pop_back (); p.colour = colours.back (); } diff --git a/test/subrip_reader_test.cc b/test/subrip_reader_test.cc index dcd506a..597ccc9 100644 --- a/test/subrip_reader_test.cc +++ b/test/subrip_reader_test.cc @@ -278,6 +278,15 @@ BOOST_AUTO_TEST_CASE (subrip_reader_convert_line_test) ++i; r._subs.clear (); + r.convert_line ("simple color", 0, sub::Time (), sub::Time ()); + BOOST_CHECK_EQUAL (r._subs.size(), 1); + BOOST_CHECK_EQUAL (r._subs.front().text, "simple color"); + BOOST_CHECK_EQUAL (r._subs.front().bold, false); + BOOST_CHECK_CLOSE (r._subs.front().colour.r, 1, 0.1); + BOOST_CHECK (fabs (r._subs.front().colour.g) < 0.01); + BOOST_CHECK_CLOSE (r._subs.front().colour.b, 1, 0.1); + r._subs.clear (); + r.convert_line ("some red text in bold", 0, sub::Time (), sub::Time ()); BOOST_CHECK_EQUAL (r._subs.size(), 2); i = r._subs.begin (); -- cgit v1.2.3