I was one of the people who investigated this case, and the customer was able to narrow down the scenario which was triggering the leak. Eventually, I tracked it down. First, here's the thread that caused the leak:
DWORD CALLBACK ThreadProc(void *lpParameter)
{
...
// This CreateWindow caused uxtheme to allocate some memory
HWND hwnd = CreateWindow(...);
RememberWorkerWindow(hwnd);
MSG msg;
while (GetMessage(&msg, NULL, 0, 0)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
Read more: The Old New Thing
QR: