From c2de29d09e7d70c59260aad6fa7a3fb33185535a Mon Sep 17 00:00:00 2001 From: Bob Zieman Date: Tue, 7 Sep 1993 05:33:17 +0000 Subject: [PATCH] added errSymTestPrint --- src/libCom/errSymLib.c | 38 +++++++++++++++++++++++++++++++++--- src/libCom/error/errSymLib.c | 38 +++++++++++++++++++++++++++++++++--- 2 files changed, 70 insertions(+), 6 deletions(-) diff --git a/src/libCom/errSymLib.c b/src/libCom/errSymLib.c index d4730b97f..4b9014923 100644 --- a/src/libCom/errSymLib.c +++ b/src/libCom/errSymLib.c @@ -360,6 +360,8 @@ va_list pvar; int rtnval; int namelen; int formatlen; + unsigned short modnum; + unsigned short errnum; name[0] = '\0'; @@ -376,11 +378,12 @@ va_list pvar; else{ rtnval = errSymFind(value,name); } - + modnum = status >> 16; + errnum = status & 0xffff; if(rtnval) { sprintf(name, - "Error status =0x%8lx not in symbol table", - status); + "Error status (module %hu, number %hu) not in symbol table", + modnum, errnum); } if(pFormatString){ @@ -657,3 +660,32 @@ int msgcount; } printf("\nerrSymDump: total number of error messages=%d\n", msgcount); } + + +/**************************************************************** + * errSymTestPrint + ***************************************************************/ +#ifdef __STDC__ +void errSymTestPrint(long errNum) +#else +void errSymTestPrint(errNum) +long errNum; +#endif /* __STDC__ */ +{ + char message[256]; + unsigned short modnum; + unsigned short errnum; + + message[0] = '\0'; + modnum = errNum >> 16; + errnum = errNum & 0xffff; + if (modnum < 501) { + printf("errSymTestPrint: module number < 501 \n"); + return; + } + errSymFind(errNum, message); + if ( message[0] == '\0' ) return; + printf("module %hu number %hu message='%s'\n", + modnum, errnum, message); + return; +} diff --git a/src/libCom/error/errSymLib.c b/src/libCom/error/errSymLib.c index d4730b97f..4b9014923 100644 --- a/src/libCom/error/errSymLib.c +++ b/src/libCom/error/errSymLib.c @@ -360,6 +360,8 @@ va_list pvar; int rtnval; int namelen; int formatlen; + unsigned short modnum; + unsigned short errnum; name[0] = '\0'; @@ -376,11 +378,12 @@ va_list pvar; else{ rtnval = errSymFind(value,name); } - + modnum = status >> 16; + errnum = status & 0xffff; if(rtnval) { sprintf(name, - "Error status =0x%8lx not in symbol table", - status); + "Error status (module %hu, number %hu) not in symbol table", + modnum, errnum); } if(pFormatString){ @@ -657,3 +660,32 @@ int msgcount; } printf("\nerrSymDump: total number of error messages=%d\n", msgcount); } + + +/**************************************************************** + * errSymTestPrint + ***************************************************************/ +#ifdef __STDC__ +void errSymTestPrint(long errNum) +#else +void errSymTestPrint(errNum) +long errNum; +#endif /* __STDC__ */ +{ + char message[256]; + unsigned short modnum; + unsigned short errnum; + + message[0] = '\0'; + modnum = errNum >> 16; + errnum = errNum & 0xffff; + if (modnum < 501) { + printf("errSymTestPrint: module number < 501 \n"); + return; + } + errSymFind(errNum, message); + if ( message[0] == '\0' ) return; + printf("module %hu number %hu message='%s'\n", + modnum, errnum, message); + return; +}