wine/dlls/msvfw32
Alexandros Frantzis 97e018f9a5 msvfw32: Use window name to determine if window is created using MCIWndCreate.
The current version of the code incorrectly assumes that the lpszClass
member of CREATESTRUCT passed with WM_CREATE will point to the same
memory used for the CreateWindowEx class name parameter. MCIWND_Create
uses this assumption to perform a pointer comparison on the class name
to determine whether the MCI window is being created using
MCIWndCreateA/W and should therefore expect a unicode path parameter.

As a side effect of commit e41c255be6
"win32u: Use send_message_timeout for WM_CREATE and WM_NCCREATE" the
CREATESTRUCT lpszClass member started pointing to different memory,
breaking the current implementation of MCIWND_Create().

This commit fixes the problem by changing MCIWndCreateA/W to use an
internal window name, unlikely to be used by normal applications, which
can then be checked in MCIWND_Create to determine if the MCI window is
being created using MCIWndCreateA/W.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53578
2022-09-05 18:53:06 +02:00
..
tests msvfw32: Use window name to determine if window is created using MCIWndCreate. 2022-09-05 18:53:06 +02:00
drawdib.c
Makefile.in
mciwnd.c msvfw32: Use window name to determine if window is created using MCIWndCreate. 2022-09-05 18:53:06 +02:00
msvfw32.rc
msvfw32.spec
msvideo_main.c
msvideo_private.h