From: <tp...@ke...> - 2008-02-23 09:51:35
|
CVS Root: /cvs/gstreamer Module: gst-plugins-base Changes by: tpm Date: Sat Feb 23 2008 09:51:40 UTC Log message: Based on patch by: Tomasz SaÅaciÅski <tsalacinski gmail com> * gst/subparse/gstsubparse.c: (parse_mdvdsub): * tests/check/elements/subparse.c: (test_microdvd_with_italics), (subparse_suite): Forward slashes at the beginning and end of a line also signify italics (Fixes: #518162). Modified files: . : ChangeLog gst/subparse : gstsubparse.c tests/check/elements: subparse.c Links: http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gst-plugins-base/ChangeLog.diff?r1=1.3769&r2=1.3770 http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gst-plugins-base/gst/subparse/gstsubparse.c.diff?r1=1.49&r2=1.50 http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gst-plugins-base/tests/check/elements/subparse.c.diff?r1=1.9&r2=1.10 ====Begin Diffs==== Index: ChangeLog =================================================================== RCS file: /cvs/gstreamer/gst-plugins-base/ChangeLog,v retrieving revision 1.3769 retrieving revision 1.3770 diff -u -d -r1.3769 -r1.3770 --- ChangeLog 22 Feb 2008 06:38:07 -0000 1.3769 +++ ChangeLog 23 Feb 2008 09:51:24 -0000 1.3770 @@ -1,3 +1,13 @@ +2008-02-23 Tim-Philipp Müller <tim at centricular dot net> + + Based on patch by: Tomasz SaÅaciÅski <tsalacinski gmail com> + * gst/subparse/gstsubparse.c: (parse_mdvdsub): + * tests/check/elements/subparse.c: (test_microdvd_with_italics), + (subparse_suite): + Forward slashes at the beginning and end of a line also signify + italics (Fixes: #518162). 2008-02-22 Sebastian Dröge <sl...@ci...> * tests/check/gst-plugins-base.supp: Index: gstsubparse.c RCS file: /cvs/gstreamer/gst-plugins-base/gst/subparse/gstsubparse.c,v retrieving revision 1.49 retrieving revision 1.50 diff -u -d -r1.49 -r1.50 --- gstsubparse.c 8 Dec 2007 18:38:38 -0000 1.49 +++ gstsubparse.c 23 Feb 2008 09:51:26 -0000 1.50 @@ -455,10 +455,22 @@ if (sscanf (line, "{s:%u}", &fontsize) == 1) { line = strchr (line, '}') + 1; } + /* forward slashes at beginning/end signify italics too */ + if (g_str_has_prefix (line, "/")) { + italic = TRUE; + ++line; + } if ((line_split = strchr (line, '|'))) line_chunk = g_markup_escape_text (line, line_split - line); else line_chunk = g_markup_escape_text (line, strlen (line)); + /* Remove italics markers at end of line/stanza (CHECKME: are end slashes + * always at the end of a line or can they span multiple lines?) */ + if (g_str_has_suffix (line_chunk, "/")) { + line_chunk[strlen (line_chunk) - 1] = '\0'; markup = g_string_append (markup, "<span"); if (italic) g_string_append (markup, " style=\"italic\""); Index: subparse.c RCS file: /cvs/gstreamer/gst-plugins-base/tests/check/elements/subparse.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- subparse.c 8 Dec 2007 18:38:39 -0000 1.9 +++ subparse.c 23 Feb 2008 09:51:26 -0000 1.10 @@ -423,6 +423,22 @@ GST_END_TEST; +GST_START_TEST (test_microdvd_with_italics) +{ + static SubParseInputChunk microdvd_italics[] = { + { + "{1}{1}25.000 movie info: XVID 608x256 25.0fps 699.0 MB|" + "/SubEdit b.4060(http://subedit.com.pl)/\n" + "{100}{200}/italics/|not italics\n", + 4 * GST_SECOND, 8 * GST_SECOND, + "<span style=\"italic\">italics</span>\n" "<span>not italics</span>"} + }; + test_microdvd_do_test (microdvd_italics, G_N_ELEMENTS (microdvd_italics)); +} +GST_END_TEST; GST_START_TEST (test_microdvd_with_fps) { static SubParseInputChunk microdvd_input[] = { @@ -558,6 +574,7 @@ tcase_add_test (tc_chain, test_tmplayer_style4); tcase_add_test (tc_chain, test_tmplayer_style4_with_bogus_lines); tcase_add_test (tc_chain, test_microdvd_with_fps); + tcase_add_test (tc_chain, test_microdvd_with_italics); tcase_add_test (tc_chain, test_mpl2); tcase_add_test (tc_chain, test_subviewer); tcase_add_test (tc_chain, test_subviewer2); |