diff --git a/src/libCom/gpHash/gpHash.h b/src/libCom/gpHash/gpHash.h index f822524e8..2d254f165 100644 --- a/src/libCom/gpHash/gpHash.h +++ b/src/libCom/gpHash/gpHash.h @@ -40,6 +40,7 @@ epicsShareFunc void epicsShareAPI gphDelete(void *pvt,const char *name,void *pvtid); epicsShareFunc void epicsShareAPI gphFreeMem(void *pvt); epicsShareFunc void epicsShareAPI gphDump(void *pvt); +epicsShareFunc void epicsShareAPI gphDumpFP(FILE *fp,void *pvt); #ifdef __cplusplus } diff --git a/src/libCom/gpHash/gpHashLib.c b/src/libCom/gpHash/gpHashLib.c index 02aaf2792..9e1487d59 100644 --- a/src/libCom/gpHash/gpHashLib.c +++ b/src/libCom/gpHash/gpHashLib.c @@ -231,6 +231,11 @@ void epicsShareAPI gphFreeMem(void *pvt) } void epicsShareAPI gphDump(void *pvt) +{ + gphDumpFP(stdout,pvt); +} + +void epicsShareAPI gphDumpFP(FILE *fp,void *pvt) { int hashInd; gphPvt *pgphPvt = (gphPvt *)pvt; @@ -245,13 +250,13 @@ void epicsShareAPI gphDump(void *pvt) if(paplist[hashInd] == NULL) continue; plist=paplist[hashInd]; pgphNode = (GPHENTRY *) ellFirst(plist); - printf("\n %3.3hd=%3.3d",hashInd,ellCount(plist)); + fprintf(fp,"\n %3.3hd=%3.3d",hashInd,ellCount(plist)); number=0; while(pgphNode) { - printf(" %s %p",pgphNode->name,pgphNode->pvtid); - if(number++ ==2) {number=0;printf("\n ");} + fprintf(fp," %s %p",pgphNode->name,pgphNode->pvtid); + if(number++ ==2) {number=0;fprintf(fp,"\n ");} pgphNode = (GPHENTRY *) ellNext((ELLNODE*)pgphNode); } } - printf("\n End of General Purpose Hash\n"); + fprintf(fp,"\n End of General Purpose Hash\n"); }