Ticket #5545: t5545_debug_1.diff

File t5545_debug_1.diff, 1.1 KB (added by Janne Grunau, 15 years ago)
  • libs/libmythtv/mpeg/pespacket.cpp

     
    5252        {
    5353            uint sz = (((_allocSize * 2) + 4095) / 4096) * 4096;
    5454            unsigned char *nbuf = pes_alloc(sz);
     55            if (!nbuf)
     56            {
     57                VERBOSE(VB_IMPORTANT,
     58                        QString("pes_alloc failed to allocate %1 bytes for a "
     59                                "packet on PID 0x%2").arg(sz)
     60                        .arg(packet->PID(),0,16));
     61                _badPacket = true;
     62                return true;
     63            }
    5564            memcpy(nbuf, _fullbuffer, _pesdataSize);
    5665            pes_free(_fullbuffer);
    5766            _fullbuffer = nbuf;
     
    333342
    334343unsigned char *pes_alloc(uint size)
    335344{
     345    if (size > 1<<16)
     346    {
     347        VERBOSE(VB_IMPORTANT, QString("Allocating a %1 byte PES packet failed")
     348                .arg(size));
     349        return NULL;
     350    }
    336351    QMutexLocker locker(&pes_alloc_mutex);
    337352#ifndef USING_VALGRIND
    338353    if (size <= 188)