[Bug 52779] Construction Set Extender crash with an Assertion Error in wine 7.5

WineHQ Bugzilla wine-bugs at winehq.org
Tue Apr 12 17:42:35 CDT 2022


https://bugs.winehq.org/show_bug.cgi?id=52779

--- Comment #5 from Lorenzo Ferrillo <lorenzofer at live.it> ---
Created attachment 72187
  --> https://bugs.winehq.org/attachment.cgi?id=72187
execute hooks callbacks always when not an internal message

Found the cause.
In the old code, the WH_CALLWNDPROC was always executed  even when
WINPROC_call_window was not calling it's procedure (exiting early)
The parameter generation was moved in 0cfc7c445810c52622afa2b2635e0a23861df386
to init_window_call_params. This function still exit early with a FALSE. 
However in  that commit the execution of WH_CALLWNDPROC is gated with an
if(!init_window_call_params(...))
preventing WH_CALLWNDPROC to run. Before
0cfc7c445810c52622afa2b2635e0a23861df386 it was executed properly. After it
isn't. 
This application ComboBoxes seems to need the old behaviour.

After the regression commit a lot of other commits moved this piece of code to
win32u. This patch was made on the master.
The patch restore the old behaviour the init_window_call_params call and gate
the dispatch_win_proc_params but only after  the WH_CALLWNDPROC execution.
Differenlty from the old behaviour the patch make  WH_CALLWNDPROCRET execute
even when init_window_call_params is false, while in the pre regreession
behaviour WINPROC_call_window returning false was causing the routine to exit
early.

-- 
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