windows-nt/Source/XPSP1/NT/printscan/ui/shellext/common/dbmem.cpp
2020-09-26 16:20:57 +08:00

87 lines
2 KiB
C++

//+-------------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1998 - 1999
//
// File: dbmem.cpp
//
//--------------------------------------------------------------------------
/*----------------------------------------------------------------------------
/ Title;
/ dbmem.cpp
/
/ Authors;
/ David De Vorchik (daviddv)
/
/ Notes;
/ Wrappers for memory allocation (for tracking leaks etc)
/----------------------------------------------------------------------------*/
#include "precomp.hxx"
#include "stdio.h"
#pragma hdrstop
#ifdef DEBUG
/*-----------------------------------------------------------------------------
/ Locals & helper functions
/----------------------------------------------------------------------------*/
// Ensure that we don't recurse
#undef LocalAlloc
#undef LocalFree
/*-----------------------------------------------------------------------------
/ DebugLocalAlloc
/ ---------------
/ Perform a LocalAlloc with suitable tracking of the block.
/
/ In:
/ uFlags = flags
/ cbSize = size of allocation
/
/ Out:
/ HLOCAL
/----------------------------------------------------------------------------*/
HLOCAL DebugLocalAlloc(UINT uFlags, SIZE_T cbSize)
{
HLOCAL hResult;
TraceEnter(TRACE_COMMON_MEMORY, "DebugLocalAlloc");
Trace(TEXT("Flags %08x, Size %d (%08x)"), uFlags, cbSize, cbSize);
hResult = LocalAlloc(uFlags, cbSize);
TraceLeaveValue(hResult);
}
/*-----------------------------------------------------------------------------
/ DebugLocalFree
/ --------------
/ Wrapper for local free that releases the memory allocation.
/
/ In:
/ hLocal = allocation to be free'd
/
/ Out:
/ HLOCAL
/----------------------------------------------------------------------------*/
HLOCAL DebugLocalFree(HLOCAL hLocal)
{
HLOCAL hResult;
TraceEnter(TRACE_COMMON_MEMORY, "DebugLocalAlloc");
Trace(TEXT("Freeing handle %08x"), hLocal);
hResult = LocalFree(hLocal);
TraceLeaveValue(hResult);
}
#endif // DEBUG