From 0252dd19056d407d58dc9681b0c0ea506a20796b Mon Sep 17 00:00:00 2001 From: Till Straumann Date: Wed, 10 Sep 2014 12:03:50 -0700 Subject: [PATCH] - simplified code - provide epicsFindAddrGetFeatures() instead of epicsStackTraceGetFeatures() --- src/libCom/osi/os/Darwin/osdFindAddr.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/libCom/osi/os/Darwin/osdFindAddr.c b/src/libCom/osi/os/Darwin/osdFindAddr.c index d2f5a4465..8c77aadf3 100644 --- a/src/libCom/osi/os/Darwin/osdFindAddr.c +++ b/src/libCom/osi/os/Darwin/osdFindAddr.c @@ -22,24 +22,22 @@ int epicsFindAddr(void *addr, epicsSymbol *sym_p) { Dl_info inf; - if ( ! dladdr(addr, &inf) || (!inf.dli_fname && !inf.dli_sname) ) { + if ( ! dladdr(addr, &inf) ) { sym_p->f_nam = 0; sym_p->s_nam = 0; - /* unable to lookup */ - return 0; - } - - sym_p->f_nam = inf.dli_fname; - sym_p->s_nam = inf.dli_sname; - sym_p->s_val = inf.dli_saddr; + sym_p->s_val = 0; + } else { + sym_p->f_nam = inf.dli_fname; + sym_p->s_nam = inf.dli_sname; + sym_p->s_val = inf.dli_saddr; + } return 0; } -epicsShareFunc int epicsStackTraceGetFeatures(void) +int epicsFindAddrGetFeatures(void) { return EPICS_STACKTRACE_LCL_SYMBOLS | EPICS_STACKTRACE_GBL_SYMBOLS - | EPICS_STACKTRACE_DYN_SYMBOLS - | EPICS_STACKTRACE_ADDRESSES; + | EPICS_STACKTRACE_DYN_SYMBOLS; }