Re: [Nagios-devel] Compiler warnings

Support forum for Nagios Core, Nagios Plugins, NCPA, NRPE, NSCA, NDOUtils and more. Engage with the community of users including those using the open source solutions.
Locked
Guest

Re: [Nagios-devel] Compiler warnings

Post by Guest »

Andreas Ericsson wrote:
> Ahoy.
>
> I was digging around trying to fix a bunch of compiler-warnings, and
> noticed that pretty much every invocation of my_free() resulted in
> about a million warnings, such as this:
>
> ../xdata/xrddefault.c:190: warning: dereferencing type-punned
> pointer will break strict-aliasing rules
>
>
> Considering that not a single invocation of my_free() evaluates the
> return code of the function, a macro such as
>
> #define my_free(ptr) { if(ptr) { free(ptr); ptr = NULL; } }
>
> would do the trick, and also provide a slight performance improvement.
>
> Since a patch would be fairly huge, and I've kinda filled my quota
> for huge patches for today, the following sed-script will take care
> of the call-sites (requires sed 4.0.9 or later):
>
> sed -i 's/my_free[^&]*&\([^)]*\).*/my_free(\1);/' */*.c
>

Definitely a good idea. I've committed this to CVS after some manual
massaging post-sed.

Don't know why, but I get a SIGABRT if I don't comment out two my_free()
statements in xdata/xodtemplate.c in the
xodtemplate_get_inherited_string() function.

For the time being I've removed them. This will cause a small, but
one-time memory leak upon startup until the problem is fixed.


Ethan Galstad,
Nagios Developer
---
Email: [email protected]
Website: http://www.nagios.org





This post was automatically imported from historical nagios-devel mailing list archives
Original poster: [email protected]
Locked