[Bug 19505] Cannot run AMIS (Daisy Book Reader)

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Jul 30 05:40:21 CDT 2009


http://bugs.winehq.org/show_bug.cgi?id=19505





--- Comment #2 from Rein Klazes <wijn at online.nl>  2009-07-30 05:40:20 ---
(In reply to comment #1)

> XP. The next issue that the application runs into seems to be an issue with
> menu handling. Prior to the latest crash, the relay log shows:
> 
> 0009:Call user32.GetSubMenu(000000a0,00000003) ret=00415bd0
> 0009:Ret  user32.GetSubMenu() retval=00000000 ret=00415bd0
> 
> I've attached a +menu,+relay,+seh,+tid trace.

It is a problem with mdi menus. The app apparently does not like that the
system inserts a system menu as the first item of a mdi-child menu.

With some happy hacking:

diff --git a/dlls/user32/mdi.c b/dlls/user32/mdi.c
index 7e017b0..ac9a339 100644
--- a/dlls/user32/mdi.c
+++ b/dlls/user32/mdi.c
@@ -896,7 +896,7 @@ static BOOL MDI_AugmentFrameMenu( HWND frame, HWND hChild )
         hSysMenuBitmap = hBitmap;
       }
     }
-
+#if 0
     if( !InsertMenuA(menu,0,MF_BYPOSITION | MF_BITMAP | MF_POPUP,
                      (UINT_PTR)hSysPopup, (LPSTR)hSysMenuBitmap))
     {
@@ -904,6 +904,7 @@ static BOOL MDI_AugmentFrameMenu( HWND frame, HWND hChild )
        DestroyMenu(hSysPopup);
        return 0;
     }
+#endif

     EnableMenuItem(hSysPopup, SC_SIZE, MF_BYCOMMAND | MF_GRAYED);
     EnableMenuItem(hSysPopup, SC_MOVE, MF_BYCOMMAND | MF_GRAYED);
@@ -944,6 +945,7 @@ static BOOL MDI_RestoreFrameMenu( HWND frame, HWND hChild )
     menuInfo.cbSize = sizeof(menuInfo);
     menuInfo.fMask  = MIIM_DATA | MIIM_TYPE;

+#if 0
     GetMenuItemInfoW(menu,
                     0,
                     TRUE,
@@ -957,6 +959,7 @@ static BOOL MDI_RestoreFrameMenu( HWND frame, HWND hChild )
     {
         DeleteObject(HBITMAP_32(LOWORD(menuInfo.dwTypeData)));
     }
+#endif

     /* close */
     DeleteMenu(menu, SC_CLOSE, MF_BYCOMMAND);

the app proceeds much further, and crashes in quartz. Back trace in a moment.

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list