summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkamel5 <vdr.kamel5 (at) gmx (dot) net>2020-07-15 11:36:26 +0200
committerkamel5 <vdr.kamel5 (at) gmx (dot) net>2020-07-15 13:21:38 +0200
commit5402edd41bdfe46c94ef6c3a0dda2bb7e4fce1f3 (patch)
treee134523e132e2ce2039df38060eef3737e55ee2f
parent6f14ddae8a91feed5272cd475f320bf9a9ca9214 (diff)
downloadvdr-plugin-skindesigner-5402edd41bdfe46c94ef6c3a0dda2bb7e4fce1f3.tar.gz
vdr-plugin-skindesigner-5402edd41bdfe46c94ef6c3a0dda2bb7e4fce1f3.tar.bz2
Update Locking in extensions/globaltimers.c
-rw-r--r--extensions/globaltimers.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/extensions/globaltimers.c b/extensions/globaltimers.c
index 1d8092f..8de97ce 100644
--- a/extensions/globaltimers.c
+++ b/extensions/globaltimers.c
@@ -52,11 +52,14 @@ void cGlobalTimers::MarkLocalTimers(void) {
delete[] localTimer;
localTimer = NULL;
}
+ const cTimers* timers;
#if defined (APIVERSNUM) && (APIVERSNUM >= 20301)
+ {
LOCK_TIMERS_READ;
- const cTimers* timers = Timers;
+ timers = Timers;
+ }
#else
- const cTimers* timers = &Timers;
+ timers = &Timers;
#endif
int numTimers = Size();
if (numTimers > 0) {
@@ -78,14 +81,17 @@ void cGlobalTimers::MarkLocalTimers(void) {
}
void cGlobalTimers::SetLocalTimers(void) {
+ const cTimers* timers;
#if defined (APIVERSNUM) && (APIVERSNUM >= 20301)
+ {
LOCK_TIMERS_READ;
- const cTimers* timers = Timers;
+ timers = Timers;
+ }
#else
- const cTimers* timers = &Timers;
+ timers = &Timers;
#endif
for (const cTimer *Timer = timers->First(); Timer; Timer = timers->Next(Timer)) {
- if (Timer->HasFlags(tfActive))
+ if (Timer && Timer->HasFlags(tfActive))
Append(Timer);
}
}