Ticket #7919: 7919-v1.patch

File 7919-v1.patch, 1.1 KB (added by danielk, 14 years ago)

Possible fix.

  • libs/libmythtv/avformatdecoder.cpp

     
    29812981    while (buf < buf_end)
    29822982    {
    29832983        if (*buf == 0x10)
     2984        {
    29842985            buf++; // skip
    2985 
    2986         if (*buf == 0x02)
     2986        }
     2987        else if (*buf == 0x02)
    29872988        {
    2988             buf += 3;
    2989             ttd->Decode(buf+1, VBI_DVB);
     2989            buf += 4;
     2990            if ((buf_end - buf) >= 42)
     2991                ttd->Decode(buf, VBI_DVB);
     2992            buf += 42;
    29902993        }
    29912994        else if (*buf == 0x03)
    29922995        {
    2993             buf += 3;
    2994             ttd->Decode(buf+1, VBI_DVB_SUBTITLE);
     2996            buf += 4;
     2997            if ((buf_end - buf) >= 42)
     2998                ttd->Decode(buf, VBI_DVB_SUBTITLE);
     2999            buf += 42;
    29953000        }
    29963001        else if (*buf == 0xff)
    29973002        {
     
    30003005        else
    30013006        {
    30023007            VERBOSE(VB_VBI, QString("VBI: Unknown descriptor: %1").arg(*buf));
     3008            buf += 46;
    30033009        }
    3004 
    3005         buf += 43;
    30063010    }
    30073011}
    30083012