diff --git a/cmake b/cmake index cce53d1500..dcc0c42f9d 160000 --- a/cmake +++ b/cmake @@ -1 +1 @@ -Subproject commit cce53d15008a26dcb1b7eb534a78f52f9355c676 +Subproject commit dcc0c42f9d0777cbe53642a4683709b6da58b896 diff --git a/src/util.cc b/src/util.cc index 9c73c33deb..260866d30f 100644 --- a/src/util.cc +++ b/src/util.cc @@ -25,7 +25,7 @@ #include #include -#ifdef HAVE_MALLINFO +#if defined(HAVE_MALLINFO) || defined(HAVE_MALLINFO2) # include #endif @@ -2188,9 +2188,12 @@ void get_memory_usage(uint64_t* total, uint64_t* malloced) { uint64_t ret_total; -#ifdef HAVE_MALLINFO +#if defined(HAVE_MALLINFO2) || defined(HAVE_MALLINFO) +#ifdef HAVE_MALLINFO2 + struct mallinfo2 mi = mallinfo2(); +#else struct mallinfo mi = mallinfo(); - +#endif if ( malloced ) *malloced = mi.uordblks; #endif diff --git a/zeek-config.h.in b/zeek-config.h.in index cd81091b76..90570a81d8 100644 --- a/zeek-config.h.in +++ b/zeek-config.h.in @@ -22,6 +22,9 @@ /* Define if you have the `mallinfo' function. */ #cmakedefine HAVE_MALLINFO +/* Define if you have the `mallinfo2' function. */ +#cmakedefine HAVE_MALLINFO2 + /* Define if you have the header file. */ #cmakedefine HAVE_MEMORY_H