Mailing List archive

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

[vdr] OSD: is it allowed to have multiple instances



Hi,

I'm unshure, whether such situations are allowed:

The new OSD is created before the old one is destroyed.

cOsd *a = new cOsd;
...
cOsd *b = new cOsd;
delete a;
...
delete b;

Stacking OSDs:

cOsd *a = new cOsd;
...
cOsd *b = new cOsd;
...
delete b;
...
delete a;

BTW: the new and delete operations are here just to keep it simple. They get executed by the regular API.

Currently, vdr-xine keeps a pointer to the current OSD. The pointer is remembered when the 'new' get's executed, and it is forgotten when the 'delete' happens.

From time to time, it happens, that e. g. the femon or the dvd plugin kill VDR due to an assert in my plugin, that bails out when not the current OSD gets deleted.

Bye.
--
Dipl.-Inform. (FH) Reinhard Nissl
mailto:rnissl@gmx.de




Home | Main Index | Thread Index