From 25c24d0444c26d52218fc1c0862c3a6a67f7258f Mon Sep 17 00:00:00 2001 From: "benjamin.franksen" <benjamin.franksen@helmholtz-berlin.de> Date: Thu, 19 Sep 2013 11:24:59 +0000 Subject: [PATCH] seq: fixed a bug in pvGet/PutComplete Must not epicsEventSignal when epicsEventTryWait returns epicsEventWaitTimeout, since this means we have not yet been called back by CA. This bug could lead to pvGet/PutComplete erroneously returning TRUE even though the callback did not yet arrive. --- src/seq/seq_if.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/seq/seq_if.c b/src/seq/seq_if.c index 6df3bd65..532bfee6 100644 --- a/src/seq/seq_if.c +++ b/src/seq/seq_if.c @@ -257,7 +257,6 @@ epicsShareFunc boolean epicsShareAPI seq_pvGetComplete(SS_ID ss, VAR_ID varId) ss_read_buffer(ss, ch, FALSE); return TRUE; case epicsEventWaitTimeout: - epicsEventSignal(getSem); return FALSE; case epicsEventWaitError: ss->getReq[varId] = NULL; @@ -540,7 +539,6 @@ epicsShareFunc boolean epicsShareAPI seq_pvPutComplete( done = TRUE; break; case epicsEventWaitTimeout: - epicsEventSignal(putSem); break; case epicsEventWaitError: ss->putReq[varId] = NULL; -- GitLab