Fixed read-back of TSEL link

Reading back a .TSEL field that was originally pointed to
another record's .TIME field was exposing internal details
that didn't need to be made visible. This commit hides the
.TIME => .VAL change completely, and allows a .TSEL link
field to be saved and restored properly using autosave.
This commit is contained in:
Andrew Johnson
2013-09-13 11:57:18 -05:00
parent 4ae048572a
commit 2d3a828acd
2 changed files with 6 additions and 4 deletions

View File

@@ -303,7 +303,7 @@ void epicsShareAPI recGblTSELwasModified(struct link *plink)
/*Note that the VAL value will not be used*/
pfieldname = strstr(ppv_link->pvname, ".TIME");
if (pfieldname) {
strcpy(pfieldname, ".VAL");
*pfieldname = 0;
ppv_link->pvlMask |= pvlOptTSELisTime;
}
}

View File

@@ -2041,9 +2041,11 @@ char * epicsShareAPI dbGetString(DBENTRY *pdbentry)
else if(pvlMask&pvlOptCP) ppind=3;
else if(pvlMask&pvlOptCPP) ppind=4;
else ppind=0;
if(plink->value.pv_link.pvname)
strcpy(message,plink->value.pv_link.pvname);
else
if (plink->value.pv_link.pvname) {
strcpy(message, plink->value.pv_link.pvname);
if (pvlMask & pvlOptTSELisTime)
strcat(message, ".TIME");
} else
strcpy(message,"");
strcat(message," ");
strcat(message,ppstring[ppind]);