Magellan Linux

Contents of /trunk/mplayer/patches/mplayer-1.0_rc2-demux_mov_fix_20080129.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 463 - (show annotations) (download)
Tue Feb 5 16:48:20 2008 UTC (16 years, 3 months ago) by niro
File size: 1345 byte(s)
-fixed patch

1 Index: demux_mov.c
2 ===================================================================
3 --- demux_mov.c (revision 24724)
4 +++ demux_mov.c (working copy)
5 @@ -173,11 +173,12 @@
6 i=trak->chunkmap_size;
7 while(i>0){
8 --i;
9 - for(j=trak->chunkmap[i].first;j<last;j++){
10 + j=FFMAX(trak->chunkmap[i].first, 0);
11 + for(;j<last;j++){
12 trak->chunks[j].desc=trak->chunkmap[i].sdid;
13 trak->chunks[j].size=trak->chunkmap[i].spc;
14 }
15 - last=trak->chunkmap[i].first;
16 + last=FFMIN(trak->chunkmap[i].first, trak->chunks_size);
17 }
18
19 #if 0
20 @@ -235,6 +236,8 @@
21 s=0;
22 for(j=0;j<trak->durmap_size;j++){
23 for(i=0;i<trak->durmap[j].num;i++){
24 + if (s >= trak->samples_size)
25 + break;
26 trak->samples[s].pts=pts;
27 ++s;
28 pts+=trak->durmap[j].dur;
29 @@ -246,6 +249,8 @@
30 for(j=0;j<trak->chunks_size;j++){
31 off_t pos=trak->chunks[j].pos;
32 for(i=0;i<trak->chunks[j].size;i++){
33 + if (s >= trak->samples_size)
34 + break;
35 trak->samples[s].pos=pos;
36 mp_msg(MSGT_DEMUX, MSGL_DBG3, "Sample %5d: pts=%8d off=0x%08X size=%d\n",s,
37 trak->samples[s].pts,
38 @@ -1568,8 +1573,7 @@
39 if( udta_len>udta_size)
40 udta_len=udta_size;
41 {
42 - char dump[udta_len-4];
43 - stream_read(demuxer->stream, (char *)&dump, udta_len-4-4);
44 + stream_skip(demuxer->stream, udta_len-4-4);
45 udta_size -= udta_len;
46 }
47 }