Memory Problems view

This view shows any memory problems found in your program by the Memory Analysis tool. The problems that can appear in the view include:

To see data in the Memory Problems view, you must click a session (or a component such as a file or thread) in the Sessions View. The following image shows some typical problems that you might see:
Memory Problems view

Note: If you want to capture the memory error data and review these results outside of the IDE, press CtrlA to select all of the information contained in the table, then press CtrlC to copy it as text to the clipboard.
The error information is listed in table format. Not all table columns are shown by default, but you can configure which ones are shown by clicking the arrow for the view menu (in the upper right toolbar) and choosing Preferences. The supported columns are:
Type Description
Expand When errors are grouped, clicking the arrow in this leftmost column toggles between displaying a summary row or all errors in the group.
Severity LEAK or ERROR with corresponding icon.
Description An error message.
Pointer The address stored in the pointer involved in the error or leak.
Trap Function A function that was checked when the error was detected.
Time Stamp The library timestamp (can be wrapped data).
PID The process ID.
TID The thread ID.
Alloc Kind The type of heap operation involved in the error.
State The state of the pointer, either "in use" or "freed".
Event ID A unique event ID, ordered by error occurrence.
Binary The binary for the top frame of a backtrace.
Location The source location (file:line) for the top frame of a backtrace.
Count When errors are grouped, this field represents a count of the errors.
Note:
The preferences dialog also has these options:
  • Show full path — Show the full file path in the Location column. The default is only the base name.
  • Max rows — Limit the maximum amount of rows displayed. For performance purposes, a maximum limit of 1000 is recommended; however, if you have more rows, you can use grouping or filtering to reduce the number.

For descriptions about the message text and other information for particular errors, see Summary of Memory Analysis errors. For information about the general error categories, why the errors occur, and how to fix them, see Interpreting errors during Memory Analysis.

The Memory Problems view provides the following functionality:

View toolbar

The toolbar buttons shown in the upper right area include:
  • Remove Events — remove (by filtering) the current events from the view. This is enabled when the program is running.
  • Dump Leaks — execute the dump leaks command (the application has to run the control thread). This is enabled when the program is running.
  • Open Filter Dialog — open the Filter dialog (see the description below).
  • Prevent Auto-Refresh — don't perform a refresh automatically. This is enabled when the program is running.
  • Refresh — force a refresh.
  • View Menu — open the view menu.

Context menu

Right-clicking in the table area opens a context menu with these options:
  • Filter… — opens the traces filter (see the description below).
  • Quick Filter
    • Up to Event — show all errors up to this current error (by time occurrence).
    • From Event — show only the errors from this current error (by time occurrence).
    • Same backtrace — show only errors with the same backtrace.
    • Show All — reset the filter.
  • Group By
    • None — no grouping is done.
    • Type — group by error type.
    • Backtrace — group errors with the same backtrace under a single group. For group entries, the non-aggregated column shows a value for the first entry.
    • Thread — group by thread ID.
    • Severity — group by error severity.
  • Show Backtrace — activates the Memory Backtrace view and shows the current backtrace in it.
  • Show Source — navigate to the selected event's source location in the editor.
  • Preferences… — open the view preferences dialog to set the column selection and order.