summaryrefslogtreecommitdiff
path: root/src/spu_dec
diff options
context:
space:
mode:
authorDarren Salt <linux@youmustbejoking.demon.co.uk>2008-04-15 01:06:51 +0100
committerDarren Salt <linux@youmustbejoking.demon.co.uk>2008-04-15 01:06:51 +0100
commite79f77ee055a7503e3e27e945933602d080ecd7b (patch)
tree683a2d446b45866646c7cf00c6710372dd5f2d48 /src/spu_dec
parentf1925da5c80d4170425f6efb6ad68a2909074057 (diff)
parentc440431caef75667ce807f49ec72e029d7e5037f (diff)
downloadxine-lib-e79f77ee055a7503e3e27e945933602d080ecd7b.tar.gz
xine-lib-e79f77ee055a7503e3e27e945933602d080ecd7b.tar.bz2
Merge from 1.1.
--HG-- rename : debian/libxine1.install => debian/libxine2.install rename : src/libxineadec/xine_speex_decoder.c => src/combined/xine_speex_decoder.c rename : src/libsputext/demux_sputext.c => src/spu_dec/sputext_demuxer.c
Diffstat (limited to 'src/spu_dec')
-rw-r--r--src/spu_dec/sputext_demuxer.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/spu_dec/sputext_demuxer.c b/src/spu_dec/sputext_demuxer.c
index d7d1361b1..b70164172 100644
--- a/src/spu_dec/sputext_demuxer.c
+++ b/src/spu_dec/sputext_demuxer.c
@@ -263,7 +263,7 @@ static char *sub_readtext(char *source, char **dest) {
}
*dest= (char *)xine_xmalloc (len+1);
- if (!dest)
+ if (!(*dest))
return ERR;
strncpy(*dest, source, len);
@@ -544,6 +544,8 @@ static subtitle_t *sub_read_line_ssa(demux_sputext_t *this,subtitle_t *current)
line3) < 9 );
line2=strchr(line3, ',');
+ if (!line2)
+ return NULL;
for (comma = 4; comma < max_comma; comma ++)
{
@@ -895,7 +897,10 @@ static subtitle_t *sub_read_line_jacobsub(demux_sputext_t *this, subtitle_t *cur
}
}
*q = '\0';
- current->text[current->lines] = strdup(line1);
+ if (current->lines < SUB_MAX_TEXT)
+ current->text[current->lines] = strdup(line1);
+ else
+ xprintf (this->stream->xine, XINE_VERBOSITY_DEBUG, "Too many lines in a subtitle\n");
}
current->lines++;
return current;