"Michael Kaufmann" hallo@michael-kaufmann.ch wrote:
Some applications call DestroyMenu for menus that are still displayed in a window. We need to check if a menu is still used and set the window's menu handle to NULL if that's the case.
This patch fixes the important bug 1486.
Changelog:
- DestroyMenu: Check if the menu is still displayed and adjust the
window's menu handle
There is a test case in Wine (dlls/user/tests/win.c,test_SetMenu) which shows that your patch is wrong.
It was said many times already that the real fix for that bug is to move all user object management into wineserver and use the same handle allocation scheme as the one used for windows.