mpatrol is a link library that attempts to diagnose run-time errors that are caused by the wrong use of dynamically allocated memory, including writing to free memory and memory leaks. Along with providing a comprehensive and configurable log of all dynamic memory operations (such as malloc(), operator new, etc.) that occurred during the lifetime of a program, the mpatrol library performs extensive checking to detect any misuse of dynamically allocated memory and has support for both memory allocation profiling and tracing. A wide variety of library settings can also be changed at run-time via an environment variable, thus removing the need to recompile or relink in order to change the library's behaviour.
|Tags||Software Development Debuggers|
|Operating Systems||Windows POSIX|
Release Notes: This release adds better logging for diagnostic messages, much improved autoconf, automake and libtool support, and provisional HTML log file support with the HTML option. The library now checks to ensure that there were not any problems writing the profiling and tracing output files. mpatrol also now has better Tru64 thread-safe support.
Release Notes: The problems with building Windows DLLs were fixed. The problems with the stack unwinding on Tru64 were fixed. The mpsym command now works on LynxOS. The mpedit command now works on FreeBSD and supports the elvis, pico, and nano editors. The ability to build a Debian package was added.
Release Notes: Many new arguments that are passed to prologue, epilogue, and low memory callback functions were added. The tools that already use them were updated. The Windows DLL version of the mpatrol library now correctly exports the C++ functions defined within it. The maximum input line length for the mptrace and mleak commands was increased due to the excessive length of some C++ identifiers. The UNIX Makefile was improved when building mptrace with GUI support. The ability to build full documentation from the source code was added. Skeleton autoconf, automake, and libtool support was added.
Release Notes: Added the 'CHECKFORK' option in order to fix the 'fork()' problem on UNIX platforms explicitly. This had to be added because the fix in the previous release did not work for multithreaded programs on Linux. Added the 'HD_CONTENTS' flag to the heapdiff tool. Added the '--source' option to the mptrace command.
Release Notes: Ability to read, write, compare and remove allocation contents files added. Support added for automatic compilation when 'TARGET=TARGET_ANY' and 'ARCH=ARCH_ANY' and added information about the platform in the log file. SuSE Linux is now supported. Ability to trace reallocations added. Fixed a problem on UNIX platforms when 'fork()' was called and the child process continued to make memory allocations. Fixed a bug when using 'alloca()' without full stack support. Added the '--hatf-file' option to the mptrace command to write out the trace file in HATF format. Also added running statistics to the '--verbose' option. Added the '--max-stack' option to the mleak command.