diff -Nu vdr-1.3.24/osd.c vdr/osd.c --- vdr-1.3.24/osd.c 2004-12-19 13:27:38.000000000 +0100 +++ vdr/osd.c 2005-05-14 13:59:03.000000000 +0200 @@ -574,7 +574,7 @@ // --- cOsd ------------------------------------------------------------------ -bool cOsd::isOpen = false; +int cOsd::isOpen = 0; cOsd::cOsd(int Left, int Top) { @@ -585,7 +585,7 @@ left = Left; top = Top; width = height = 0; - isOpen = true; + isOpen++; } cOsd::~cOsd() @@ -593,7 +593,7 @@ for (int i = 0; i < numBitmaps; i++) delete bitmaps[i]; delete savedRegion; - isOpen = false; + isOpen--; } cBitmap *cOsd::GetBitmap(int Area) diff -Nu vdr-1.3.24/osd.h vdr/osd.h --- vdr-1.3.24/osd.h 2004-10-16 12:33:44.000000000 +0200 +++ vdr/osd.h 2005-05-14 13:58:08.000000000 +0200 @@ -210,7 +210,7 @@ class cOsd { friend class cOsdProvider; private: - static bool isOpen; + static int isOpen; cBitmap *savedRegion; cBitmap *bitmaps[MAXOSDAREAS]; int numBitmaps; @@ -235,7 +235,7 @@ public: virtual ~cOsd(); ///< Shuts down the OSD. - static bool IsOpen(void) { return isOpen; } + static int IsOpen(void) { return isOpen; } int Left(void) { return left; } int Top(void) { return top; } int Width(void) { return width; }