Custom Memory Allocation Example
Provides Purify with information about a completed memory block lookup. Call this function right after invoking custom code that checks for the existence of a memory block.
void *PurifyPostDidAlloc(void *pRequest, int fActual, unsigned int dwFlags)
|
pRequest |
The address of the block whose existence has been determined, within its red zones. |
|
fActual |
An integer value indicating whether your custom code found an existing block at the specified address. |
|
dwFlags |
May include any of the following flags, or 0 to indicate none of them: |
|
Flag |
Meaning |
|
PURIFY_TRACK_AS_HEAP |
The block is allocated within a Windows heap |
|
PURIFY_TRACK_NO_REDZONE |
Purify should not pad the block with red zones |
|
fActual |
Where fActual is the same integer value provided as the second parameter above. |
§ This function supplies Purify with information about a completed request to look up a memory block. Use this function in conjunction with the PurifyPreDidAlloc() function, which indicates to Purify when a block lookup is pending.
§ This function is a member of Purify's memory tracking interface. The example code provided for Purify's memory tracking interface demonstrates this function.
§ This function is necessary only for memory blocks that have been created by custom allocation routines. Purify automatically intercepts standard Windows and C runtime API functions.
(C) Copyright IBM Corporation 1992, 2010.