diff --git a/src/db/dbNotify.c b/src/db/dbNotify.c index 5ba0edce6..7bd0af475 100644 --- a/src/db/dbNotify.c +++ b/src/db/dbNotify.c @@ -201,6 +201,14 @@ void epicsShareAPI dbPutNotify(putNotify *ppn) long status=0; assert(precord); + /*check for putField disabled*/ + if(precord->disp) { + if((void *)(&precord->disp) != ppn->paddr->pfield) { + ppn->status = putNotifyPutDisabled; + (*ppn->userCallback)(ppn); + return; + } + } /* Must handle DBF_XXXLINKs as special case. * Only dbPutField will change link fields. * Also the record is not processed as a result diff --git a/src/db/dbNotify.h b/src/db/dbNotify.h index f654166c7..a14faed8e 100644 --- a/src/db/dbNotify.h +++ b/src/db/dbNotify.h @@ -32,7 +32,8 @@ typedef struct ellCheckNode{ typedef enum { putNotifyOK, putNotifyCanceled, - putNotifyError + putNotifyError, + putNotifyPutDisabled }putNotifyStatus; typedef struct putNotify{