Ticket #5511: revert_17535_avlib_mem.diff

File revert_17535_avlib_mem.diff, 2.0 KB (added by henrik.lilljebjorn@…, 12 years ago)

Patch reverting part of [17535] update

  • programs/mythtranscode/mpeg2fix.

    old new  
    447447    return (rx->WaitBuffers());
    448448}
    449449
    450 MPEG2replex::MPEG2replex() :
    451     done(false), otype(-1), ext_count(0), mplex(NULL)
     450MPEG2replex::MPEG2replex()
    452451{
    453452    memset(&vrbuf, 0, sizeof(ringbuffer));
    454453    memset(&index_vrbuf, 0, sizeof(ringbuffer));
    455     memset(extrbuf, 0, sizeof(ringbuffer) * N_AUDIO);
    456     memset(index_extrbuf, 0, sizeof(ringbuffer) * N_AUDIO);
    457     memset(exttype, 0, sizeof(int) * N_AUDIO);
    458     memset(exttypcnt, 0, sizeof(int) * N_AUDIO);
    459     memset(extframe, 0, sizeof(audio_frame_t) * N_AUDIO);
    460     memset(&seq_head, 0, sizeof(seq_head));
     454    memset(&extrbuf, 0, sizeof(ringbuffer) * N_AUDIO);
     455    memset(&index_extrbuf, 0, sizeof(ringbuffer) * N_AUDIO);
     456    ext_count = 0;
    461457}
    462458
    463459MPEG2replex::~MPEG2replex()
  • programs/mythtranscode/mpeg2fix.h

    old new  
    4242{
    4343  public:
    4444    MPEG2frame(int size)
    45         : isSequence(false), isGop(false), framePos(NULL), gopPos(NULL)
    4645    {
    47         av_new_packet(&pkt, size);
    48         pkt.priv = NULL;
    49         memset(pkt.data, 0, sizeof(uint8_t) * pkt.size);
    50         memset(&mpeg2_seq, 0, sizeof(mpeg2_seq));
    51         memset(&mpeg2_gop, 0, sizeof(mpeg2_gop));
    52         memset(&mpeg2_pic, 0, sizeof(mpeg2_pic));
     46        pkt.data = (uint8_t *)malloc(size);
     47        pkt_memsize = size;
    5348    }
    5449    ~MPEG2frame()
    5550    {
    56         av_destruct_packet(&pkt);
     51        free(pkt.data);
    5752    }
    5853    void ensure_size(int size)
    5954    {
    60         if (pkt.size < size)
     55        if (pkt_memsize < size)
    6156        {
    6257            pkt.data = (uint8_t *)realloc(pkt.data, size);
    63             pkt.size = size;
     58            pkt_memsize = size;
    6459        }
    6560    }
    6661    void set_pkt(AVPacket *newpkt)
     
    7368    }
    7469
    7570    AVPacket pkt;
     71    int pkt_memsize;
    7672    bool isSequence;
    7773    bool isGop;
    7874    uint8_t *framePos;