mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-18 14:26:43 +00:00
subparse: Improve subrip type check regex
This patch prevents timestamp like "1 1:00:00", which would have been seen as hour 101 by our parser, and allow single digit hour, minute and seconds as it's already supported by the parser, and also by other implementation like in mplayer. This fixes bug 657872. https://bugzilla.gnome.org/show_bug.cgi?id=657872
This commit is contained in:
parent
2ad501aa51
commit
25939e0218
1 changed files with 3 additions and 3 deletions
|
@ -1246,9 +1246,9 @@ gst_sub_parse_data_format_autodetect_regex_once (GstSubParseRegex regtype)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case GST_SUB_PARSE_REGEX_SUBRIP:
|
case GST_SUB_PARSE_REGEX_SUBRIP:
|
||||||
result = (gpointer) g_regex_new ("^([ 0-9]){0,3}[0-9]\\s*(\x0d)?\x0a"
|
result = (gpointer) g_regex_new ("^ {0,3}[ 0-9]{1,4}\\s*(\x0d)?\x0a"
|
||||||
"[ 0-9][0-9]:[ 0-9][0-9]:[ 0-9][0-9][,.][ 0-9]{0,2}[0-9]"
|
" ?[0-9]{1,2}: ?[0-9]{1,2}: ?[0-9]{1,2}[,.] {0,2}[0-9]{1,3}"
|
||||||
" +--> +([ 0-9])?[0-9]:[ 0-9][0-9]:[ 0-9][0-9][,.][ 0-9]{0,2}[0-9]",
|
" +--> +[0-9]{1,2}: ?[0-9]{1,2}: ?[0-9]{1,2}[,.] {0,2}[0-9]{1,2}",
|
||||||
G_REGEX_RAW | G_REGEX_OPTIMIZE, 0, &gerr);
|
G_REGEX_RAW | G_REGEX_OPTIMIZE, 0, &gerr);
|
||||||
if (result == NULL) {
|
if (result == NULL) {
|
||||||
g_warning ("Compilation of subrip regex failed: %s", gerr->message);
|
g_warning ("Compilation of subrip regex failed: %s", gerr->message);
|
||||||
|
|
Loading…
Reference in a new issue