diff -Nru ditherndemo-0.0.1_FF/ditherndemo.c ditherndemo-0.0.1_noreopen-osd/ditherndemo.c --- ditherndemo-0.0.1_FF/ditherndemo.c Wed Jan 4 21:05:32 2006 +++ ditherndemo-0.0.1_noreopen-osd/ditherndemo.c Fri Jan 6 00:34:22 2006 @@ -57,6 +57,12 @@ void cDithernOsd::Show(void) { + osd = cOsdProvider::NewOsd(100, 100); + if (osd) { + tArea Area = { 0, 0, OSDWidth - 1, OSDHigh - 1, 2 }; + osd->SetAreas(&Area, 1); + osd->GetBitmap(0)->Reset(); + } PaintColors(); } @@ -123,17 +129,8 @@ void cDithernOsd::PaintColors() { - if (osd) - delete osd; - - osd = cOsdProvider::NewOsd(100, 100); if (osd) { - tArea Area = { 0, 0, OSDWidth - 1, OSDHigh - 1, 2 }; - osd->SetAreas(&Area, 1); - } - - if (osd) { - + osd->GetBitmap(0)->Reset(); //Backgroundcolor osd->DrawRectangle(0, 0, OSDWidth, OSDHigh, colors[0]);