link: not pv_link backend type
informational, and a hint at what pvt points to
This commit is contained in:
@@ -172,6 +172,7 @@ static long dbDbInitLink(struct link *plink, short dbfType)
|
||||
pdbAddr = dbCalloc(1, sizeof(struct dbAddr));
|
||||
*pdbAddr = dbaddr; /* structure copy */
|
||||
plink->value.pv_link.pvt = pdbAddr;
|
||||
plink->value.pv_link.backend = "db";
|
||||
ellAdd(&dbaddr.precord->bklnk, &plink->value.pv_link.backlinknode);
|
||||
/* merging into the same lockset is deferred to the caller.
|
||||
* cf. initPVLinks()
|
||||
@@ -186,6 +187,7 @@ static void dbDbAddLink(dbLocker *locker, struct link *plink, short dbfType, DBA
|
||||
plink->lset = &dbDb_lset;
|
||||
plink->type = DB_LINK;
|
||||
plink->value.pv_link.pvt = ptarget;
|
||||
plink->value.pv_link.backend = "db";
|
||||
ellAdd(&ptarget->precord->bklnk, &plink->value.pv_link.backlinknode);
|
||||
|
||||
/* target record is already locked in dbPutFieldLink() */
|
||||
@@ -196,6 +198,7 @@ static void dbDbRemoveLink(dbLocker *locker, struct link *plink)
|
||||
{
|
||||
DBADDR *pdbAddr = (DBADDR *) plink->value.pv_link.pvt;
|
||||
plink->value.pv_link.pvt = 0;
|
||||
plink->value.pv_link.backend = NULL;
|
||||
plink->value.pv_link.getCvt = 0;
|
||||
plink->value.pv_link.pvlMask = 0;
|
||||
plink->value.pv_link.lastGetdbrType = 0;
|
||||
|
||||
@@ -85,6 +85,7 @@ struct pv_link {
|
||||
LINKCVT getCvt; /* input conversion function */
|
||||
short pvlMask; /* Options mask */
|
||||
short lastGetdbrType; /* last dbrType for DB or CA get */
|
||||
const char *backend;/* informational string describing the backend */
|
||||
};
|
||||
|
||||
/* structure of a VME io channel */
|
||||
|
||||
@@ -641,8 +641,7 @@ static void doCloseLinks(dbRecordType *pdbRecordType, dbCommon *precord,
|
||||
dbScanLock(precord);
|
||||
locked = 1;
|
||||
}
|
||||
if(plink->lset)
|
||||
(*plink->lset->removeLink)(NULL, plink);
|
||||
dbRemoveLink(NULL, plink);
|
||||
|
||||
} else if (iocBuildMode==buildIsolated && plink->type == DB_LINK) {
|
||||
/* free link, but don't split lockset like dbDbRemoveLink() */
|
||||
|
||||
Reference in New Issue
Block a user