summaryrefslogtreecommitdiff
path: root/extensions
diff options
context:
space:
mode:
Diffstat (limited to 'extensions')
-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);
}
}