Ticket #375: ogg_audiofile.2.diff

File ogg_audiofile.2.diff, 1.6 KB (added by reimar, 21 years ago)

fixed patch, without unrelated changes

  • libmpdemux/demux_ogg.c

    RCS file: /cvsroot/mplayer/main/libmpdemux/demux_ogg.c,v
    retrieving revision 1.81
    diff -u -r1.81 demux_ogg.c
     
    554554  if (ds == d->video && ((sh_audio_t*)ds->sh)->format == FOURCC_THEORA)
    555555     context = ((sh_video_t *)ds->sh)->context;
    556556  data = demux_ogg_read_packet(os,pack,context,&pts,&flags,samplesize);
    557   if(d->video->id < 0)
    558       ((sh_audio_t*)ds->sh)->delay = pts;
    559557
    560558  /// Clear subtitles if necessary (for broken files)
    561559  if ((clear_sub > 0) && (pts >= clear_sub)) {
     
    14711469    }
    14721470  }
    14731471    if (pos < 0) pos = 0;
    1474     if (pos > (demuxer->movi_end - demuxer->movi_start)) return;
     1472    if (pos > (demuxer->movi_end - demuxer->movi_start))
     1473      pos = demuxer->movi_end - demuxer->movi_start;
    14751474  } // if(ogg_d->syncpoints)
    14761475
    14771476  while(1) {
     
    15001499      char* buf = ogg_sync_buffer(sync,BLOCK_SIZE);
    15011500      int len = stream_read(demuxer->stream,buf,BLOCK_SIZE);
    15021501       if(len == 0 && demuxer->stream->eof) {
    1503         mp_msg(MSGT_DEMUX,MSGL_ERR,"EOF while trying to seek !!!!\n");
    1504         break;
     1502        mp_msg(MSGT_DEMUX,MSGL_V,"EOF while trying to seek !!!!\n");
     1503        return;
    15051504      }
    15061505      ogg_sync_wrote(sync,len);
    15071506      continue;
     
    15561555        vo_osd_changed(OSDTYPE_SUBTITLE);
    15571556        clear_sub = -1;
    15581557        demux_ogg_add_packet(ds,os,ds->id,&op);
     1558        if (demuxer->video->id < 0)
     1559          sh_audio->delay = pts;
    15591560        return;
    15601561      }
    15611562     }