summaryrefslogtreecommitdiff
path: root/src/demuxers/demux_real.c
diff options
context:
space:
mode:
authorDarren Salt <linux@youmustbejoking.demon.co.uk>2008-03-26 21:16:07 +0000
committerDarren Salt <linux@youmustbejoking.demon.co.uk>2008-03-26 21:16:07 +0000
commit427bd5660454820ab4de3c569b1f4727977c23ef (patch)
treea3047e3eec2c78f52c5de18dcd1e36eefbc277d5 /src/demuxers/demux_real.c
parentfd417a2e958b0f38be68a09c1316324f1e9589c4 (diff)
parent1bedd052b17aab0fc6b1b85a727207648908095b (diff)
downloadxine-lib-427bd5660454820ab4de3c569b1f4727977c23ef.tar.gz
xine-lib-427bd5660454820ab4de3c569b1f4727977c23ef.tar.bz2
Merge from 1.1.
Diffstat (limited to 'src/demuxers/demux_real.c')
-rw-r--r--src/demuxers/demux_real.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/demuxers/demux_real.c b/src/demuxers/demux_real.c
index 41c6fb4a2..7b5f7530d 100644
--- a/src/demuxers/demux_real.c
+++ b/src/demuxers/demux_real.c
@@ -175,7 +175,8 @@ static void real_parse_index(demux_real_t *this) {
off_t original_pos = this->input->get_current_pos(this->input);
unsigned char index_chunk_header[INDEX_CHUNK_HEADER_SIZE];
unsigned char index_record[INDEX_RECORD_SIZE];
- int i, entries, stream_num;
+ int i;
+ unsigned int entries, stream_num;
real_index_entry_t **index;
while(next_index_chunk) {
@@ -230,10 +231,11 @@ static void real_parse_index(demux_real_t *this) {
}
}
- if(index && entries) {
+ if(index && entries)
/* Allocate memory for index */
*index = xine_xcalloc(entries, sizeof(real_index_entry_t));
+ if(index && entries && *index) {
/* Read index */
for(i = 0; i < entries; i++) {
if(this->input->read(this->input, index_record, INDEX_RECORD_SIZE)