[MPlayer-cvslog] r31346 - trunk/subreader.c
reimar
subversion at mplayerhq.hu
Mon Jun 7 21:01:15 CEST 2010
Author: reimar
Date: Mon Jun 7 21:01:15 2010
New Revision: 31346
Log:
Extract duplicated code into a separate function.
Modified:
trunk/subreader.c
Modified: trunk/subreader.c
==============================================================================
--- trunk/subreader.c Mon Jun 7 20:53:20 2010 (r31345)
+++ trunk/subreader.c Mon Jun 7 21:01:15 2010 (r31346)
@@ -111,6 +111,15 @@ static char *stristr(const char *haystac
return NULL;
}
+static void sami_add_line(subtitle *current, char *buffer, char **pos) {
+ char *p = *pos;
+ *p = 0;
+ trail_space(buffer);
+ if (*buffer && current->lines < SUB_MAX_TEXT)
+ current->text[current->lines++] = strdup(buffer);
+ *pos = buffer;
+}
+
static subtitle *sub_read_line_sami(stream_t* st, subtitle *current, int utf16) {
static char line[LINE_LEN+1];
static char *s = NULL, *slacktime_s;
@@ -162,9 +171,7 @@ static subtitle *sub_read_line_sami(stre
case 3: /* get all text until '<' appears */
if (*s == '\0') break;
else if (!strncasecmp (s, "<br>", 4)) {
- *p = '\0'; p = text; trail_space (text);
- if (text[0] != '\0' && current->lines < SUB_MAX_TEXT)
- current->text[current->lines++] = strdup (text);
+ sami_add_line(current, text, &p);
s += 4;
}
else if ((*s == '{') && !sub_no_text_pp) { state = 5; ++s; continue; }
@@ -243,9 +250,7 @@ static subtitle *sub_read_line_sami(stre
// For the last subtitle
if (current->end <= 0) {
current->end = current->start + sub_slacktime;
- *p = '\0'; trail_space (text);
- if (text[0] != '\0' && current->lines < SUB_MAX_TEXT)
- current->text[current->lines++] = strdup (text);
+ sami_add_line(current, text, &p);
}
return current;
More information about the MPlayer-cvslog
mailing list