From 94fe4f4b6373ca40a4ca5be06a1c8caea5ed76f2 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sun, 21 Feb 2016 19:19:34 +0000 Subject: Don't write duplicate nodes into subtitle files. --- src/lib/writer.cc | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'src/lib') diff --git a/src/lib/writer.cc b/src/lib/writer.cc index 47c6b8381..ea8a2e89f 100644 --- a/src/lib/writer.cc +++ b/src/lib/writer.cc @@ -543,8 +543,20 @@ Writer::write (PlayerSubtitles subs) void Writer::write (list > fonts) { - /* Just keep a list of fonts and we'll deal with them in ::finish */ - copy (fonts.begin (), fonts.end (), back_inserter (_fonts)); + /* Just keep a list of unique fonts and we'll deal with them in ::finish */ + + BOOST_FOREACH (shared_ptr i, fonts) { + bool got = false; + BOOST_FOREACH (shared_ptr j, _fonts) { + if (*i == *j) { + got = true; + } + } + + if (!got) { + _fonts.push_back (i); + } + } } bool -- cgit v1.2.3