diff options
author | kamel5 <vdr.kamel5 (at) gmx (dot) net> | 2020-02-23 19:41:24 +0100 |
---|---|---|
committer | kamel5 <vdr.kamel5 (at) gmx (dot) net> | 2020-03-02 12:47:04 +0100 |
commit | 874f5cd9d5856fdb12933766238345c38497ad7f (patch) | |
tree | 2d41828df1581a8e9623f90d0a1b1b70c715652a /recmenuitem.c | |
parent | 9044e092f8c3aeb8a96db9aa71493ee4f3b5c318 (diff) | |
download | vdr-plugin-tvguide-874f5cd9d5856fdb12933766238345c38497ad7f.tar.gz vdr-plugin-tvguide-874f5cd9d5856fdb12933766238345c38497ad7f.tar.bz2 |
Fixed a problem in DisplayTimerConflict
Diffstat (limited to 'recmenuitem.c')
-rw-r--r-- | recmenuitem.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/recmenuitem.c b/recmenuitem.c index b8fca6d..e8edf79 100644 --- a/recmenuitem.c +++ b/recmenuitem.c @@ -1548,6 +1548,7 @@ cRecMenuItemTimer::cRecMenuItemTimer(const cTimer *timer, this->overlapStop = overlapStop; this->active = active; height = 3 * font->Height(); + pixmapStatus = NULL; pixmapIcons = NULL; } @@ -1585,6 +1586,8 @@ void cRecMenuItemTimer::Show(void) { } void cRecMenuItemTimer::Draw(void) { + if (!timer) + return; const cChannel *channel = timer->Channel(); int channelTransponder = 0; cString channelName = ""; @@ -1740,8 +1743,13 @@ cRecMenuItemTimerConflictHeader::~cRecMenuItemTimerConflictHeader(void) { } void cRecMenuItemTimerConflictHeader::SetPixmaps(void) { - pixmap = osdManager.requestPixmap(4, cRect(x, y, width, height)); - pixmapStatus = osdManager.requestPixmap(5, cRect(x, y, width, height)); + if (!pixmap) { + pixmap = osdManager.requestPixmap(4, cRect(x, y, width, height)); + pixmapStatus = osdManager.requestPixmap(5, cRect(x, y, width, height)); + } else { + pixmap->SetViewPort(cRect(x, y, width, height)); + pixmapStatus->SetViewPort(cRect(x, y, width, height)); + } pixmapStatus->Fill(clrTransparent); } |