diff options
| author | Alexander Barton <alex@barton.de> | 2008-08-13 16:00:57 +0200 |
|---|---|---|
| committer | Alexander Barton <alex@barton.de> | 2008-08-13 16:00:57 +0200 |
| commit | c769cbecb6214f518135c4bb2a52479747c2bf7b (patch) | |
| tree | 518d4fa3b3f21c1a9b268013b95f3e608a1f7799 | |
| parent | 707cc42dec2439da1fdee4ed3eb0e0a44d5ea9fe (diff) | |
| download | ngircd-c769cbecb6214f518135c4bb2a52479747c2bf7b.tar.gz ngircd-c769cbecb6214f518135c4bb2a52479747c2bf7b.zip | |
Enable GNU libc "memory tracing" when compiled with debug code.
This patch lets ngIRCd activate "memory tracing" of the GNU libc when compiled with debug code (configure: --enable-debug) and the functionality is available on the system. (http://www.gnu.org/software/libc/manual/html_node/Allocation-Debugging.html)
| -rw-r--r-- | configure.in | 1 | ||||
| -rw-r--r-- | src/ngircd/ngircd.c | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/configure.in b/configure.in index 7cbc80ac..36f0bc28 100644 --- a/configure.in +++ b/configure.in @@ -457,6 +457,7 @@ AC_ARG_ENABLE(debug, if test "$x_debug_on" = "yes"; then AC_DEFINE(DEBUG, 1) test "$GCC" = "yes" && CFLAGS="-pedantic $CFLAGS" + AC_CHECK_FUNCS(mtrace) fi # enable "strict RFC rules"? diff --git a/src/ngircd/ngircd.c b/src/ngircd/ngircd.c index 9239edfe..952a10a4 100644 --- a/src/ngircd/ngircd.c +++ b/src/ngircd/ngircd.c @@ -84,6 +84,12 @@ main( int argc, const char *argv[] ) int i; size_t n; +#if defined(DEBUG) && defined(HAVE_MTRACE) + /* enable GNU libc memory tracing when running in debug mode + * and functionality available */ + mtrace(); +#endif + umask( 0077 ); NGIRCd_SignalQuit = NGIRCd_SignalRestart = NGIRCd_SignalRehash = false; |