https://bugs.winehq.org/show_bug.cgi?id=47641
John Alway jwalway@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jwalway@hotmail.com
--- Comment #1 from John Alway jwalway@hotmail.com --- (In reply to Alistair Leslie-Hughes from comment #0)
Created attachment 65082 [details] Testcase
When an application call a TreeView Expand function with TVE_COLLAPSE|TVE_COLLAPSERESET options, there is a chance that it will crash the application.
See attached patch for the simplest testcase.
Hello,
I applied your test patch and studied the problem. I found that in the file dlls/comctl32/treeview.c, and the function TREEVIEW_ComputeItemRect() that infoPtr->firstVisible was equal to null. To fix it I created a patch that changes code in TREEVIEW_Collapse(). I moved the function TREEVIEW_SetFirstVisible() from the end of the function to right before TREEVIEW_RecalculateVisibleOrder(). It's worked for me so far.
I posted the patch to the developer's list under the title: "[PATCH] comctl32: Fix Treeview Expand using TVE_COLLAPSE|TVE_COLLAPSERESET"
Regards, ...John Alway