From 5a8915c051320c861244bb9041bac86aa30901bd Mon Sep 17 00:00:00 2001 From: Michael Davidsaver Date: Fri, 1 Aug 2014 11:28:10 -0400 Subject: [PATCH] INST_IO no longer accept invalid string as empty --- src/ioc/db/test/dbPutLinkTest.c | 7 +++---- src/ioc/dbStatic/dbStaticLib.c | 11 ----------- 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/src/ioc/db/test/dbPutLinkTest.c b/src/ioc/db/test/dbPutLinkTest.c index 31563466f..52ae41fb5 100644 --- a/src/ioc/db/test/dbPutLinkTest.c +++ b/src/ioc/db/test/dbPutLinkTest.c @@ -482,9 +482,8 @@ static void testLinkFail(void) /* INST_IO doesn't accept empty string */ testdbPutFieldFail(S_dbLib_badField, "rINST_IO.INP", DBR_STRING, ""); - /* INST_IO accepts invalid input as empty string */ - testdbPutFieldOk("rINST_IO.INP", DBR_STRING, "abc"); - testdbGetFieldEqual("rINST_IO.INP", DBR_STRING, "@"); + /* INST_IO doesn't accept empty string */ + testdbPutFieldFail(S_dbLib_badField, "rINST_IO.INP", DBR_STRING, "abc"); /* syntax errors */ testdbPutFieldFail(S_dbLib_badField, "rVME_IO.INP", DBR_STRING, "#S201 C200 @another VME_IO"); @@ -505,7 +504,7 @@ static void testLinkFail(void) MAIN(dbPutLinkTest) { - testPlan(245); + testPlan(244); testLinkParse(); testLinkFailParse(); testCADBSet(); diff --git a/src/ioc/dbStatic/dbStaticLib.c b/src/ioc/dbStatic/dbStaticLib.c index ca7dfff83..ac4276e5d 100644 --- a/src/ioc/dbStatic/dbStaticLib.c +++ b/src/ioc/dbStatic/dbStaticLib.c @@ -2092,9 +2092,6 @@ long dbCanSetLink(DBLINK *plink, dbLinkInfo *pinfo, devSup *devsup) case PV_LINK: if(link_type==CONSTANT || link_type==PV_LINK) return 0; - else if(link_type==INST_IO && pinfo->target[0]!='\0') - /* for compatibility. Invalid non-empty INST_IO is treated as empty string */ - return 0; default: free(pinfo->target); pinfo->target = NULL; @@ -2224,14 +2221,6 @@ long dbSetLink(DBLINK *plink, dbLinkInfo *pinfo, devSup *devsup) dbFreeLinkContents(plink); dbSetLinkHW(plink, pinfo); - } else if(link_type==INST_IO && (pinfo->ltype==CONSTANT || pinfo->ltype==PV_LINK) && pinfo->target[0]!='\0') { - /* for compatibility. Invalid non-empty INST_IO is treated as empty string */ - pinfo->target[0] = '\0'; - pinfo->ltype = INST_IO; - - dbFreeLinkContents(plink); - dbSetLinkHW(plink, pinfo); - } else goto fail;