Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

windowscodecs: Cherry-pick upstream commit cdb9a274 #160

Conversation

pixelcluster
Copy link

This commit (https://gitlab.winehq.org/wine/wine/-/commit/cdb9a2748ba62891bfcd342cb3da82c204f896d2) contains a bugfix related to bitmap scaling. It fixes the CopyPixels function rejecting parameters that are valid on windows, where the destination bitmap buffer doesn't include padding for the last scanline. This behaviour is relied upon by DirectXTex's mipmap generation.

This commit fixes the black texture problem in BeamNG.drive reported in ValveSoftware/Proton#1237 (comment).

Guy1524 and others added 30 commits August 26, 2022 17:13
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
…dback.

We can't reasonably auto generate this because it's output in an
otherwise input pNext chain.

Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit 71b034c)
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
(cherry picked from commit 834ade7)
This is a change to the old hack: "HACK: mutter: winex11.drv: Workaround mutter issue #676."

In case the earlier messages have not been processed yet the wait may
hang forever. An example of such sequence is hiding a window and then
changing (possible another window's) styles without pumping messages
in between.

Indirectly related to Bug #20769, Bug #16389.
CW-Bug-Id: #20875

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit bd0d5de)
CW-Bug-Id: #20875

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit 90c0807)
CW-Bug-Id: #20875

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit e040e2c)
CW-Bug-Id: #20875

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit 3f97321)
CW-Bug-Id: #20875

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit b8128f4)
CW-Bug-Id: #20875

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit e3d0280)
…ctions.

CW-Bug-Id: #20875

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit 746df92)
Also free thread fsync APC index.
This prevents crashes when there is an invalid script
inside a tag property.

Because ParseProcedureText calls release_bytecode without
checking if compile_script failed, "code" is not set, and
this leads to a crash when release_bytecode tries to access it.

Signed-off-by: Santino Mazza <mazzasantino1206@gmail.com>
(cherry picked from commit d93712f)
… is IE.

For documents exposing a <!DOCTYPE> node but no specific X-UA-Compatible,
mshtml defaults to IE7 compat mode, unless the app is Internet Explorer and
is in Internet URL Zone. This checking for the `iexplore.exe` app name seems
hardcoded into mshtml; the FeatureControl registry keys do not affect this
directly, and none are set by default for iexplore.exe that would affect
this, anyway.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
(cherry picked from commit 3301a8e)
There can be multiple compat modes defined, separated by commas, but also
surrounded by whitespace. The highest mode in the list is picked as the
document mode, with 'edge' being the highest mode available.

It stops as soon as an invalid mode is found in the list and returns whatever
highest mode was found until then.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
(cherry picked from commit efdfd32)
Guy1524 and others added 18 commits August 26, 2022 17:17
…x for Crysis: Remastered.

The game's ray-tracing mode creates a vulkan device requiring these two extensions.  memory_priority is easy to fake, and the game doesn't use keyed mutexes.
Fix Battle Realms: Zen Edition failing to start. The game expects to find a device without
D3DDEVCAPS_HWTRANSFORMANDLIGHT.
FFXIV dies on this, but works correctly if I just remove the check.
Maybe it's just a leftover from previous refactoring.

CW-Bug-Id: #20966
CW-Bug-Id: #21119

(cherry picked from commit 4c0efe4)
…e().

CW-Bug-Id: #21119

(cherry picked from commit f48f515)
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
… than necessary.

Only `bytesperrow` bytes are written to each row of the output rect.
Therefore the last row need not be padded to `cbStride` bytes.

Signed-off-by: Joachim Priesner <joachim.priesner@web.de>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
@ivyl
Copy link
Collaborator

ivyl commented Sep 19, 2022

This is now in bleeding-edge and if it doesn't cause any regressions should be a part of the next experimental release. Thanks!

https://github.com/ValveSoftware/wine/commits/experimental-wine-bleeding-edge-7.0-25275-20220919-p6c27a8-w2bc7af-d5c22e2-vc101da

@ivyl ivyl closed this Sep 19, 2022
ivyl pushed a commit that referenced this pull request Sep 20, 2022
… than necessary.

Only `bytesperrow` bytes are written to each row of the output rect.
Therefore the last row need not be padded to `cbStride` bytes.

Signed-off-by: Joachim Priesner <joachim.priesner@web.de>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit cdb9a27)

Fix for the black texture problem in BeamNG.drive.

Link: #160
GloriousEggroll pushed a commit to GloriousEggroll/proton-wine that referenced this pull request Oct 3, 2022
… than necessary.

Only `bytesperrow` bytes are written to each row of the output rect.
Therefore the last row need not be padded to `cbStride` bytes.

Signed-off-by: Joachim Priesner <joachim.priesner@web.de>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit cdb9a27)

Fix for the black texture problem in BeamNG.drive.

Link: ValveSoftware#160
GloriousEggroll pushed a commit to GloriousEggroll/proton-wine that referenced this pull request Oct 14, 2022
… than necessary.

Only `bytesperrow` bytes are written to each row of the output rect.
Therefore the last row need not be padded to `cbStride` bytes.

Signed-off-by: Joachim Priesner <joachim.priesner@web.de>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit cdb9a27)

Fix for the black texture problem in BeamNG.drive.

Link: ValveSoftware#160
ivyl pushed a commit that referenced this pull request Oct 28, 2022
… than necessary.

Only `bytesperrow` bytes are written to each row of the output rect.
Therefore the last row need not be padded to `cbStride` bytes.

Signed-off-by: Joachim Priesner <joachim.priesner@web.de>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit cdb9a27)

Fix for the black texture problem in BeamNG.drive.

Link: #160
GloriousEggroll pushed a commit to GloriousEggroll/proton-wine that referenced this pull request Dec 19, 2022
… than necessary.

Only `bytesperrow` bytes are written to each row of the output rect.
Therefore the last row need not be padded to `cbStride` bytes.

Signed-off-by: Joachim Priesner <joachim.priesner@web.de>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit cdb9a27)

Fix for the black texture problem in BeamNG.drive.

Link: ValveSoftware#160
IsaacMarovitz added a commit to IsaacMarovitz/wine that referenced this pull request Sep 19, 2024
…d a larger buffer than necessary.

windowscodecs: BitmapScaler_CopyPixels: Do not demand a larger buffer than necessary.
Only `bytesperrow` bytes are written to each row of the output rect.
Therefore the last row need not be padded to `cbStride` bytes.

Signed-off-by: Joachim Priesner <joachim.priesner@web.de>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit cdb9a27)

Fix for the black texture problem in BeamNG.drive.

Link: ValveSoftware/wine#160
IsaacMarovitz added a commit to Whisky-App/wine that referenced this pull request Sep 19, 2024
…d a larger buffer than necessary. (#16)

* Upstream Patch - windowscodecs: BitmapScaler_CopyPixels: Do not demand a larger buffer than necessary.

windowscodecs: BitmapScaler_CopyPixels: Do not demand a larger buffer than necessary.
Only `bytesperrow` bytes are written to each row of the output rect.
Therefore the last row need not be padded to `cbStride` bytes.

Signed-off-by: Joachim Priesner <joachim.priesner@web.de>
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
(cherry picked from commit cdb9a27)

Fix for the black texture problem in BeamNG.drive.

Link: ValveSoftware/wine#160

* Bump version
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.