diff options
-rw-r--r-- | HISTORY | 2 | ||||
-rw-r--r-- | TODO | 9 | ||||
-rw-r--r-- | dxr3interface_spu_encoder.c | 1 | ||||
-rw-r--r-- | dxr3palettemanager.c | 6 | ||||
-rw-r--r-- | dxr3palettemanager.h | 1 |
5 files changed, 13 insertions, 6 deletions
@@ -278,3 +278,5 @@ NOTE: I havent found time to include all of the languages, will be done in pre2 - improve original OSD scaler for small resolutions (#1014339, Luca Olivetti) - fix compilation with -fPIC, kudos to ffmpeg (Ville Skyttä) - eliminate some compiler warnings (Ville Skyttä) +- fix OSD going pink after returning from the MPlayer plugin + (Ville Skyttä, Martin Cap) @@ -1,12 +1,6 @@ Known problems, bugs, and workarounds for this driver: ------------------------------------------------------ -* After invoking the "Reset DXR3 hardware" function, or after playing - something with the MPlayer plugin, OSD goes pink. - Workaround: none known, need to restart VDR to restore sanity. - May sometimes be restored back to normal after some operations, but no - way to reliably reproduce/ find out what "fixes" it has been found. - * No sound with the MP3 plugin with VDR >= 1.3.18. Workaround: compile the MP3 plugin with OSS support, configure it to use something else than the DXR3 for output (see the --dsp option), and set @@ -42,6 +36,9 @@ Known problems, bugs, and workarounds for this driver: * The TVOnscreen plugin's OSD is a mess, positioning errors etc. Workaround: use TVOnscreen < 0.6.0. 0.5.2 works fine for me (Ville). +* After invoking the "Reset DXR3 hardware" function, OSD goes pink + until it's hidden and shown again. + Other TODOs: ------------ diff --git a/dxr3interface_spu_encoder.c b/dxr3interface_spu_encoder.c index fc01dc7..ab8aa24 100644 --- a/dxr3interface_spu_encoder.c +++ b/dxr3interface_spu_encoder.c @@ -449,6 +449,7 @@ int cSPUEncoder::Cmd(OSD_Command cmd, int color, int x0, int y0, int x1, int y1, // This should be done in cSPUEncoder::cSPUEncoder + m_palManager.Clear(); return 0; break; diff --git a/dxr3palettemanager.c b/dxr3palettemanager.c index b93eaeb..058186b 100644 --- a/dxr3palettemanager.c +++ b/dxr3palettemanager.c @@ -113,3 +113,9 @@ uint32_t* cDxr3PaletteManager::GetPalette() return m_pal; } + +// ================================== +void cDxr3PaletteManager::Clear() +{ + memset(m_users, 0, sizeof(int) * MAX_COLORS); +} diff --git a/dxr3palettemanager.h b/dxr3palettemanager.h index 94253b8..432d6a2 100644 --- a/dxr3palettemanager.h +++ b/dxr3palettemanager.h @@ -22,6 +22,7 @@ public: void AddColor(int color); void RemoveColor(int color); + void Clear(); int GetCount(); int operator[](int index); int GetIndex(int color); |