• Alexandros Frantzis's avatar
    msvfw32: Use window name to determine if window is created using MCIWndCreate. · 97e018f9
    Alexandros Frantzis authored
    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 e41c255b
    "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
    97e018f9
Name
Last commit
Last update
..
tests Loading commit data...
Makefile.in Loading commit data...
drawdib.c Loading commit data...
mciwnd.c Loading commit data...
msvfw32.rc Loading commit data...
msvfw32.spec Loading commit data...
msvideo_main.c Loading commit data...
msvideo_private.h Loading commit data...