> Hi, > > while adding some extra tracing and looking into the (huge) logfiles, I > found the following and want some opinion about that: > > The logfile shows a lot of calls to: > > X11DRV_MsgWaitForMultipleObjectsEx > > with all parameters being or NULL: > > 5256478:000e:Call > x11drv.MsgWaitForMultipleObjectsEx(00000000,00000000,00000000,00000000,00000000) > ret=4090e51c > 5256479:000e:Call > kernel32.WaitForMultipleObjectsEx(00000000,00000000,00000000,00000000,00000000) > ret=40e09bd7 > 5256480:trace:sync:WaitForMultipleObjectsEx (00000000, (nil), 0, 00000000, > 0) > 5256481:000e:Ret kernel32.WaitForMultipleObjectsEx() retval=ffffffff > ret=40e09bd7 > 5256482:000e:Ret x11drv.MsgWaitForMultipleObjectsEx() retval=ffffffff > ret=4090e51c > > (the sync trace is something I added) > > x11drv.MsgWaitForMultipleObjectsEx calls WaitForMultipleObjectsEx again > with all parameters being or NULL. > > What's the use of this, shouldn't we bail out if everything is 0. What's > the use of waiting for something that isn't specified ? > > Almost immediatly after those calls are made, my setup fails. This could > be a coincedence, but .... > > Cheers, > > Paul. > > > The caller of x11drv.MsgWaitForMultipleObjectsEx seems to be user32.PeekMessageA. The first thing that PeekMessageA/W does is check for graphic events: /* check for graphics events */ if (USER_Driver.pMsgWaitForMultipleObjectsEx) USER_Driver.pMsgWaitForMultipleObjectsEx( 0, NULL, 0, 0, 0 ); But does this realy retrieve all messages as the parameter 3 and 4 would suggest (wMsgFilterMin and wMsgFilterMax being 0). If so wouldn't retrieved messages be lost_in_space as there is nothing prepared for the return message (first parameter being no pointer) Cheers, Paul. _______________________________________________ wine-users mailing list wine-users@xxxxxxxxxx http://www.winehq.org/mailman/listinfo/wine-users