Fix AIX compulation (break addr resolution)

Revert c92c161585, casting to void*
cannot fool gcc. The AIX address resolution was broken anyway, so
just avoid the problem and make it compile well.
This commit is contained in:
Daniel Black
2022-10-19 16:41:24 +11:00
parent 79dc3989fd
commit 18a0f0c178

View File

@ -319,12 +319,20 @@ int my_addr_resolve(void *ptr, my_addr_loc *loc)
/* Save result for future comparisons. */
strnmov(addr2line_binary, info.dli_fname, sizeof(addr2line_binary));
#ifdef _AIX
/*
info.dli_fbase is a char on AIX and casting it doesn't fool gcc.
leave backtracing broken on AIX until a real solution can be found.
*/
addr_offset= NULL;
#else
/*
Check if we should use info.dli_fbase as an offset or not
for the base program. This is depending on if the compilation is
done with PIE or not.
*/
addr_offset= (void*) info.dli_fbase;
addr_offset= info.dli_fbase;
#endif
#ifndef __PIE__
if (strcmp(info.dli_fname, my_progname) == 0 &&
addr_resolve((void*) my_addr_resolve, loc) == 0 &&