Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] DVD playback pumps 100's of error msgs



Hi list,

the following problem occurs when replaying a DVD with
vdr-1.0.0-pre2 with AIO-20020227, dvb-0.94:
the msg log is pumped with hundreds of messages saying:
"vdr[10373]: ERROR: can't allocate frame buffer (count=1040)"
This message occurs many times per second (~115/sec).

However this message is misleading.
It is thrown by the method
cFrame::cFrame(const uchar *Data, int Count, eFrameType Type, int Index)
in ringbuffer.c.
In this code snipplet:
if (data && Data)
    memcpy(data, Data, count);
else
    esyslog(LOG_ERR, "ERROR: can't allocate frame buffer (count=%d)", 
count);

I crosschecked it and saw that not the allocation of 'data' is the 
problem but that 'Data' contains a null pointer.
Therefor the else case is being triggered.

I didn't check if it is OK to pass a null pointer here, but as 'Count' 
is 1040 (in this case) it seems to me that 'Data' shouldn't be NULL.
Or the other way round:
If it is OK to pass NULL then the cFrame constructor should behave 
different than it is right now.

By the way:
this problem occured with arbitrary DVDs here so it should be no problem 
to reproduce it.
My last version was vdr-0.99 with AIO20020213.
In this version the problem does not accur.

best regards
   Richard





Home | Main Index | Thread Index