From f0a195ee7d451d1e3bec64c110a635ebf66b144c Mon Sep 17 00:00:00 2001 From: Marty Kraimer Date: Wed, 7 Jul 1999 19:54:46 +0000 Subject: [PATCH] ErGetTicks now locks while updating ticks --- src/dev/apsDev/devApsEr.c | 3 +++ src/vxWorks/dev/apsDev/devApsEr.c | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/dev/apsDev/devApsEr.c b/src/dev/apsDev/devApsEr.c index 80ba6a59c..d7713b69c 100644 --- a/src/dev/apsDev/devApsEr.c +++ b/src/dev/apsDev/devApsEr.c @@ -219,13 +219,16 @@ long ErRegisterErrorHandler(int Card, ERROR_FUNC func) ******************************************************************************/ long ErGetTicks(int Card, unsigned long *Ticks) { + int key; if (ErHaveReceiver(Card) < 0) return(-1); /* BUG -- Do we read the HI first or the low? */ + key = intLock(); *Ticks = ErLink[Card].pEr->EventCounterLo; *Ticks += ErLink[Card].pEr->EventCounterHi << 16; + intUnlock(key); return(0); } diff --git a/src/vxWorks/dev/apsDev/devApsEr.c b/src/vxWorks/dev/apsDev/devApsEr.c index 80ba6a59c..d7713b69c 100644 --- a/src/vxWorks/dev/apsDev/devApsEr.c +++ b/src/vxWorks/dev/apsDev/devApsEr.c @@ -219,13 +219,16 @@ long ErRegisterErrorHandler(int Card, ERROR_FUNC func) ******************************************************************************/ long ErGetTicks(int Card, unsigned long *Ticks) { + int key; if (ErHaveReceiver(Card) < 0) return(-1); /* BUG -- Do we read the HI first or the low? */ + key = intLock(); *Ticks = ErLink[Card].pEr->EventCounterLo; *Ticks += ErLink[Card].pEr->EventCounterHi << 16; + intUnlock(key); return(0); }