Patch record processing routines to update timestamp before processing outlinks

This commit is contained in:
Bruce Hill
2017-02-18 00:47:52 -08:00
parent 3e891a12ff
commit f1e83b22f2
10 changed files with 84 additions and 18 deletions

View File

@@ -147,6 +147,10 @@ static long process(struct dbCommon *pcommon)
recGblSetSevr(prec,UDF_ALARM,prec->udfs);
}
/* Update the timestamp before writing output values so it
* will be uptodate if any downstream records fetch it via TSEL */
recGblGetTimeStampSimm(prec, prec->simm, NULL);
if (prec->nsev < INVALID_ALARM )
status=writeValue(prec); /* write the new value */
else {
@@ -173,7 +177,10 @@ static long process(struct dbCommon *pcommon)
if ( !pact && prec->pact ) return(0);
prec->pact = TRUE;
recGblGetTimeStampSimm(prec, prec->simm, NULL);
if ( pact ) {
/* Update timestamp again for asynchronous devices */
recGblGetTimeStampSimm(prec, prec->simm, NULL);
}
monitor(prec);
recGblFwdLink(prec);