Leaked PrintTicket provider handle detected |
Application Verifier break message
Leaked PrintTicket provider handle detected
Probable cause
An open PrintTicket provider handle was detected when the thread exited. The creating routine might not have called PTCloseProvider() to close it prior to exiting.
Troubleshooting steps
The sample debugger output below illustrates the following troubleshooting steps:
-
Determine the thread that opened the PrintTicket provider handle by using the second parameter of this verifier stop to provide the stack trace.
-
Dump the stack trace using the dps command in the debugger.
-
Find the first non-prntvpt and non-vfPrint module name that called vfPrint!VfPTOpenProvider or vfPrint!VfPTOpenProviderEx - this typically is the 4th or the 6th stack frame in the list.
� | Copy Code |
---|---|
======================================= VERIFIER STOP 0000A012 : pid 0xD68: Leaked PrintTicket provider handle detected 03320FE8 : PrintTicket provider handle being leaked. 0312FF48 : Initialization stack trace. Use dps to dump the stack trace if it is not NULL. 00000CC0 : Thread id of the thread that opened the handle. 00000000 : Not used. ======================================= 0:000> dps 0312FF48 0312ff48 64ab3db1 vfprint!CItemTracker<HPTPROVIDER__ *>::Init+0x39 0312ff4c 004154fe Test!LeakPrintTicketProviderHandle+0x4e 0312ff50 004119f1 Test!wmain+0x201 0312ff54 00416936 Test!__tmainCRTStartup+0x1a6 0312ff58 0041677d Test!wmainCRTStartup+0xd 0312ff5c 76413833 KERNEL32!BaseThreadInitThunk+0xe 0312ff60 775fa9bd ntdll!_RtlUserThreadStart+0x23 |
Information displayed by Application Verifier
Parameter 1�-�PrintTicket provider handle being leaked.
Parameter 2�-�Initialization stack trace. Use dps to dump the stack trace if it is not NULL.
Parameter 3�-�Thread id of the thread that opened the handle.
Parameter 4�-�Not used.
Additional information
Test Layer:�PrintAPI
Stop code:�0000A012
Severity:�Error
One-time error:�no
Error report:�Break
Log to file:�yes
Create backtrace:�yes