The IOC shell dose not convert a 0 command-line argument to a NULL pointer.

Allow "" to indicate that all record types should be printed.
This commit is contained in:
W. Eric Norum
2003-11-03 22:43:50 +00:00
parent c095f483e9
commit 1c55c85de9

View File

@@ -659,7 +659,7 @@ long epicsShareAPI dbior(char *pdrvName,int type)
for(pdrvSup = (drvSup *)ellFirst(&pdbbase->drvList); pdrvSup;
pdrvSup = (drvSup *)ellNext(&pdrvSup->node)) {
pname = pdrvSup->name;
if(pdrvName!=NULL && (strcmp(pdrvName,pname)!=0)) continue;
if(pdrvName!=NULL && *pdrvName!='\0' && (strcmp(pdrvName,pname)!=0)) continue;
pdrvet = pdrvSup->pdrvet ;
if(pdrvet==NULL) {
printf("No driver entry table is present for %s\n",pname);
@@ -680,7 +680,7 @@ long epicsShareAPI dbior(char *pdrvName,int type)
pdevSup = (devSup *)ellNext(&pdevSup->node)) {
if(!(pdset = pdevSup->pdset)) continue;
if(!(pname = pdevSup->name)) continue;
if(pdrvName!=NULL && (strcmp(pdrvName,pname)!=0)) continue;
if(pdrvName!=NULL && *pdrvName!='\0' && (strcmp(pdrvName,pname)!=0)) continue;
if(pdset->report!=NULL) {
printf("Device Support: %s\n",pname);
(*pdset->report)(type);