diff --git a/src/db/callback.c b/src/db/callback.c index 6c90e0cb4..cbcaa0c00 100644 --- a/src/db/callback.c +++ b/src/db/callback.c @@ -83,11 +83,11 @@ static void callbackTask(void *arg) taskwdInsert(epicsThreadGetIdSelf(), NULL, NULL); while(TRUE) { - epicsEventMustWait(callbackSem[priority]); void *ptr; + epicsEventMustWait(callbackSem[priority]); while((ptr = epicsRingPointerPop(callbackQ[priority]))) { - if (ptr == &exitValue) goto shutdown; CALLBACK *pcallback = (CALLBACK *)ptr; + if (ptr == &exitValue) goto shutdown; ringOverflow[priority] = FALSE; (*pcallback->callback)(pcallback); }