[Bug 23345] Adobe Reader freezes when trying to open embedded multimedia

wine-bugs at winehq.org wine-bugs at winehq.org
Sun Jul 7 16:39:50 CDT 2019


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

--- Comment #11 from Sven <sven.wine at gmail.com> ---
This still happens with the most recent Acrobat Reader and Wine, so I took some
time to figure out what's going on here.

The error happens in

0009:trace:mci:MCIWndProc MCIWNDM_SENDSTRINGW (null)

Reason for this is that before this

0009:trace:mci:MCIWndProc MCIWNDM_SETOWNER xxxxxx

is called with the same value (xxxxxx) as the pointer to the MCIWnd. So now
MCIWnd is its own parent. Then MCIWNDM_OPENA is sent, which eventually calls
MCIWND_notify_pos, which sends MCIWNDM_NOTIFYPOS to the owner. However, if we
look at vfw.h we see that

#define MCIWNDM_NOTIFYPOS    (WM_USER + 201)
#define MCIWNDM_SENDSTRINGW    (WM_USER + 201)

Since the MCIWnd is its own owner, it treats the message as MCIWNDM_SENDSTRINGW
with a string pointer instead of MCIWNDM_NOTIFYPOS with position 0.

I am not sure how this actually works on Windows. Maybe the position is always
0 and MCIWNDM_SENDSTRINGW has null pointer handling or something? I wanted to
add some tests for this, but there are no tests for MCIWnd yet, so I can't just
add a null pointer test. I'll first have to figure out how MCIWnd actually
works and then write some tests. I'll try to do that in the near future.

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