diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2021-04-06 09:01:26 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2021-04-06 09:01:26 +0200 |
commit | 7fb13b3cbf6b7a2290a85e4d93b208c5a164dd43 (patch) | |
tree | 96f7310e4313c866f11e7c194836e1e9612e554a | |
parent | 23d986657a5a4e7d086932d528715aaf8875bad3 (diff) | |
download | vdr-7fb13b3cbf6b7a2290a85e4d93b208c5a164dd43.tar.gz vdr-7fb13b3cbf6b7a2290a85e4d93b208c5a164dd43.tar.bz2 |
Fixed handling the timer counter in cSchedule::DelEvent()
-rw-r--r-- | HISTORY | 3 | ||||
-rw-r--r-- | epg.c | 9 |
2 files changed, 10 insertions, 2 deletions
@@ -9578,7 +9578,7 @@ Video Disk Recorder Revision History given (reported by Manuel Reimer). - Fixed handling $(PKG_CONFIG) in newplugin (thanks to Winfried Köhler). -2021-04-05: +2021-04-06: - Fixed strreplace() to handle NULL strings (reported by Jürgen Schneider). - Somewhere down the road the 'x' bit of Doxyfile.filter got lost, so the @@ -9635,3 +9635,4 @@ Video Disk Recorder Revision History previous and next event. - Spawned timers that don't use VPS now automatically adjust their start/stop times to changes in the respective event's times. +- Fixed handling the timer counter in cSchedule::DelEvent(). @@ -7,7 +7,7 @@ * Original version (as used in VDR before 1.3.0) written by * Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>. * - * $Id: epg.c 5.2 2021/04/04 11:06:30 kls Exp $ + * $Id: epg.c 5.3 2021/04/06 09:01:26 kls Exp $ */ #include "epg.h" @@ -951,6 +951,13 @@ void cSchedule::DelEvent(cEvent *Event) if (Event->schedule == this) { UnhashEvent(Event); Event->schedule = NULL; + // Removing the event from its schedule prevents it from decrementing the + // schedule's timer counter, so we do it here: + cEvent::numTimersMutex.Lock(); + numTimersMutex.Lock(); + numTimers -= Event->numTimers; + numTimersMutex.Unlock(); + cEvent::numTimersMutex.Unlock(); events.Del(Event); } } |