Several applications -Steam, Battle.net for instance- handle the
WM_NCCALCSIZE message to override the non-client areas size and make
the client area cover the whole window, instead of changing the styles.
In winex11.drv, in decorated mode, we adjust the window rect according
to the window style to hide the unwanted decorations behind the frame,
but when client and window rects are equals, there's nothing to hide
and the actual window styles are irrelevant and can safely be ignored.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=40930
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
So that we can query the Unix symlink target from a file handle.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
Red Dead Redemption 2 requires and installs the official Vulkan loader,
but the installer requires vulkan-1.dll's FILEVERSION to be lower than what
it's installing.
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Liam Middlebrook <lmiddlebrook@nvidia.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This depends on SystemPreferredUILanguages, which does not always
match the language really used by the Windows interface
(UserDefaultUILanguage). Also the group name is not translated in all
languages. So just check the name that LsaLookupSids() returns in a
few known languages.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
It's not just the service display names that contain a smart quote
that Windows 7 fails to handle, it's all localized names.
Signed-off-by: Francois Gouget <fgouget@icodeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
The buffer content is not used before being overwritten again.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
The process must still be running for AssignProcessToJobObject() to
succeed.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
Several older Microsoft installers, particularly those changing CDs
during installation, break because they launch a child setup.exe, from
a parent process also called setup.exe, which Wine finds in the wrong
directory, as CreateProcess() first searches the parent executable's
own directory, thus re-launching the parent itself instead of the
child. Therefore CreateProcess() must be passed a full path from
SHELL_execute(), so it launches the correct child.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=8439
Signed-off-by: Damjan Jovanovic <damjan.jov@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
The value of these tests is not worth having to repeatedly relax timings.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
It turns out my prior assumption was incorrect.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
Don't include 'sync ' in the semaphore name because it will end up as
a separate argument in the child process, causing it to not find the
semaphore. Switch the child to OpenSemaphoreA() to reduce the risk of
accidentally create a new semaphore instead of opening the parent's
one. Use wait_child_process() instead of a raw
WaitForSingleObject(). The timeout is longer but the process is
expected to exit immediately anyway and this allows proper handling of
child failures (such as if there is a bug with the semaphore
handling).
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>