aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjenkins4kodi <jenkins4kodi@users.noreply.github.com>2017-04-08 09:51:12 +0200
committerGitHub <noreply@github.com>2017-04-08 09:51:12 +0200
commitbe3b3721fcede790dd9edc12bdd3ed9c1fd19036 (patch)
tree5b3787a12d7ebb470251edc7c947639711c6da83
parent984fe69cd6de624f12d454fd5ad8f07080afdb12 (diff)
parentf278849145c2f1370ff715c53932651707d92a17 (diff)
Merge pull request #11792 from taxigps/tx3g
-rw-r--r--xbmc/cores/VideoPlayer/DVDCodecs/Overlay/DVDOverlayCodecTX3G.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/xbmc/cores/VideoPlayer/DVDCodecs/Overlay/DVDOverlayCodecTX3G.cpp b/xbmc/cores/VideoPlayer/DVDCodecs/Overlay/DVDOverlayCodecTX3G.cpp
index f0894990e7..2d82947868 100644
--- a/xbmc/cores/VideoPlayer/DVDCodecs/Overlay/DVDOverlayCodecTX3G.cpp
+++ b/xbmc/cores/VideoPlayer/DVDCodecs/Overlay/DVDOverlayCodecTX3G.cpp
@@ -29,6 +29,7 @@
#include "utils/log.h"
#include "utils/StringUtils.h"
#include "utils/auto_buffer.h"
+#include "utils/RegExp.h"
// 3GPP/TX3G (aka MPEG-4 Timed Text) Subtitle support
// 3GPP -> 3rd Generation Partnership Program
@@ -248,6 +249,18 @@ int CDVDOverlayCodecTX3G::Decode(DemuxPacket *pPacket)
if (strUTF8[strUTF8.size()-1] == '\n')
strUTF8.erase(strUTF8.size()-1);
+ // erase unsupport tags
+ CRegExp tags;
+ if (tags.RegComp("(\\{[^\\}]*\\})"))
+ {
+ int pos = 0;
+ while ((pos = tags.RegFind(strUTF8.c_str(), pos)) >= 0)
+ {
+ std::string tag = tags.GetMatch(0);
+ strUTF8.erase(pos, tag.length());
+ }
+ }
+
// add a new text element to our container
m_pOverlay->AddElement(new CDVDOverlayText::CElementText(strUTF8.c_str()));