[WIN32K] Modify DBG_LOGEVENT to reference the parameter variable in non-logging mode, bring back cRefs variable in GDIOBJ_vReferenceObjectByPointer

svn path=/trunk/; revision=59538
This commit is contained in:
Timo Kreuzer 2013-07-20 12:12:13 +00:00
parent cb5bf8777e
commit 4f2e87a42f
2 changed files with 5 additions and 3 deletions

View file

@ -47,7 +47,7 @@ VOID NTAPI DbgPrintEvent(PLOGENTRY pLogEntry);
#define DBG_DUMP_EVENT_LIST(pslh) DbgDumpEventList(pslh)
#define DBG_CLEANUP_EVENT_LIST(pslh) DbgCleanupEventList(pslh)
#else
#define DBG_LOGEVENT(pslh, type, val)
#define DBG_LOGEVENT(pslh, type, val) ((void)(val))
#define DBG_INITLOG(pslh)
#define DBG_DUMP_EVENT_LIST(pslh)
#define DBG_CLEANUP_EVENT_LIST(pslh)

View file

@ -570,18 +570,20 @@ VOID
NTAPI
GDIOBJ_vReferenceObjectByPointer(POBJ pobj)
{
ULONG cRefs;
/* Check if the object has a handle */
if (GDI_HANDLE_GET_INDEX(pobj->hHmgr))
{
/* Increase the handle's reference count */
ULONG ulIndex = GDI_HANDLE_GET_INDEX(pobj->hHmgr);
ASSERT((gpaulRefCount[ulIndex] & REF_MASK_COUNT) > 0);
InterlockedIncrement((LONG*)&gpaulRefCount[ulIndex]);
cRefs = InterlockedIncrement((LONG*)&gpaulRefCount[ulIndex]);
}
else
{
/* Increase the object's reference count */
InterlockedIncrement((LONG*)&pobj->ulShareCount);
cRefs = InterlockedIncrement((LONG*)&pobj->ulShareCount);
}
DBG_LOGEVENT(&pobj->slhLog, EVENT_REFERENCE, cRefs);