Help wanted for bug#3023

Eliot Blennerhassett linux at
Sun Jun 20 17:17:39 CDT 2010


I'm hoping to get some with disposing of

Short summary:
Commenting line 934 of dlls/user32/dialog.c in EndDialog makes OrCad
(electronic schematic cad package) usable (otherwise several essential
functions don't work)

EndDialog( HWND hwnd, INT_PTR retval )
// comment the following line
if (hwnd == GetActiveWindow()) WINPOS_ActivateOtherWindow( hwnd );

MSDN says
"HWND A handle to the dialog box to be destroyed.

Dialog boxes created by the DialogBox, DialogBoxParam,
DialogBoxIndirect, and DialogBoxIndirectParam  functions must be
destroyed using the EndDialog function. An application calls EndDialog
from within the dialog box procedure; the function must not be used for
any other purpose. "

Now, can anybody explain what the purpose of the suspect line is?
or what possible bad things might happen if it was removed?

I have run Wine for several years with this one line patch, and seen no
ill effects AFAIK.

If removing the line completely is not an option, is there a way to
conditinally avoid executing it based on environment or registry?
eg if (!ALLOW_ORCAD_TO_WORK) { original code }


Eliot Blennerhassett

5 years of recompiling wine from source with a 1 line patch...

More information about the wine-devel mailing list