diff --git a/README.md b/README.md index bac72101..576e155e 100644 --- a/README.md +++ b/README.md @@ -37,7 +37,7 @@ Wine. All those differences are also documented on the Included bug fixes and improvements =================================== -**Bugfixes and features included in the next upcoming release [26]:** +**Bugfixes and features included in the next upcoming release [27]:** * Add nvapi stubs required for GPU PhysX support * Add stub for D3DXComputeNormalMap @@ -49,6 +49,7 @@ Included bug fixes and improvements * Expose PKEY_AudioEndpoint_PhysicalSpeakers device property in PulseAudio driver * Fix NULL dereference in ICSeqCompressFrameStart ([Wine Bug #27595](https://bugs.winehq.org/show_bug.cgi?id=27595)) * Fix access violation when calling GetStringTypeW with NULL src. ([Wine Bug #37759](https://bugs.winehq.org/show_bug.cgi?id=37759)) +* Fix color key regression causing pink rectangles around text ([Wine Bug #37748](https://bugs.winehq.org/show_bug.cgi?id=37748)) * Fix handling of subdirectory in FtpFindFirstFile ([Wine Bug #16526](https://bugs.winehq.org/show_bug.cgi?id=16526)) * Fix parameters for ConvertToIndexedBlendedMesh stub ([Wine Bug #36449](https://bugs.winehq.org/show_bug.cgi?id=36449)) * GetMonitorInfo returns the same name for all monitors ([Wine Bug #37709](https://bugs.winehq.org/show_bug.cgi?id=37709)) diff --git a/debian/changelog b/debian/changelog index 5bc319a2..571bd3b4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -34,6 +34,7 @@ wine-staging (1.7.34) UNRELEASED; urgency=low * Added patch for nvapi stubs (required for GPU PhysX support). * Added patch to fix NULL dereference in ICSeqCompressFrameStart. * Added patch to implement support for CUDA GPU video decoding. + * Added patch to fix color key regression causing pink rectangles around text. * Removed patch to emulate write to CR4 register (accepted upstream). * Removed patch with stub for KeSetSystemAffinityThread (accepted upstream). * Removed patch to implement combase HSTRING objects (accepted upstream). diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index d7b9cfc6..fb4175f4 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -165,6 +165,7 @@ patch_enable_all () enable_wined3d_CSMT_Helper="$1" enable_wined3d_CSMT_Main="$1" enable_winecfg_Staging="$1" + enable_wined3d_Color_Key="$1" enable_wined3d_Revert_PixelFormat="$1" enable_winedevice_Fix_Relocation="$1" enable_winemenubuilder_Desktop_Icon_Path="$1" @@ -528,6 +529,9 @@ patch_enable () winecfg-Staging) enable_winecfg_Staging="$2" ;; + wined3d-Color_Key) + enable_wined3d_Color_Key="$2" + ;; wined3d-Revert_PixelFormat) enable_wined3d_Revert_PixelFormat="$2" ;; @@ -3056,6 +3060,21 @@ if [ "$enable_winecfg_Staging" -eq 1 ]; then ) >> "$patchlist" fi +# Patchset wined3d-Color_Key +# | +# | This patchset fixes the following Wine bugs: +# | * [#37748] Fix color key regression causing pink rectangles around text +# | +# | Modified files: +# | * dlls/wined3d/surface.c +# | +if [ "$enable_wined3d_Color_Key" -eq 1 ]; then + patch_apply wined3d-Color_Key/0001-wined3d-Use-proper-color-key-type-define-when-callin.patch + ( + echo '+ { "Christian Costa", "wined3d: Use proper color key type define when calling wined3d_texture_set_color_key.", 1 },'; + ) >> "$patchlist" +fi + # Patchset wined3d-Revert_PixelFormat # | # | This patchset fixes the following Wine bugs: diff --git a/patches/wined3d-Color_Key/0001-wined3d-Use-proper-color-key-type-define-when-callin.patch b/patches/wined3d-Color_Key/0001-wined3d-Use-proper-color-key-type-define-when-callin.patch new file mode 100644 index 00000000..e08cd35f --- /dev/null +++ b/patches/wined3d-Color_Key/0001-wined3d-Use-proper-color-key-type-define-when-callin.patch @@ -0,0 +1,43 @@ +From 4e1dac79637c3e4f1e606a3a7fcb6dd2974de7c5 Mon Sep 17 00:00:00 2001 +From: Christian Costa +Date: Thu, 8 Jan 2015 00:16:39 +0100 +Subject: wined3d: Use proper color key type define when calling + wined3d_texture_set_color_key. + +Fix bug https://bugs.winehq.org/show_bug.cgi?id=37748 which was a regression caused +by commit a8ab56941577a01e17b947cddd374ba52ffd8245. +--- + dlls/wined3d/surface.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c +index fb27c8a..ad41834 100644 +--- a/dlls/wined3d/surface.c ++++ b/dlls/wined3d/surface.c +@@ -3687,12 +3687,12 @@ static HRESULT surface_blt_special(struct wined3d_surface *dst_surface, const RE + else if (flags & WINEDDBLT_KEYSRCOVERRIDE) + { + /* Use color key from DDBltFx */ +- wined3d_texture_set_color_key(src_surface->container, WINEDDSD_CKSRCBLT, &DDBltFx->ddckSrcColorkey); ++ wined3d_texture_set_color_key(src_surface->container, WINEDDCKEY_SRCBLT, &DDBltFx->ddckSrcColorkey); + } + else + { + /* Do not use color key */ +- wined3d_texture_set_color_key(src_surface->container, WINEDDSD_CKSRCBLT, NULL); ++ wined3d_texture_set_color_key(src_surface->container, WINEDDCKEY_SRCBLT, NULL); + } + + surface_blt_to_drawable(device, filter, +@@ -3700,7 +3700,7 @@ static HRESULT surface_blt_special(struct wined3d_surface *dst_surface, const RE + src_surface, src_rect, dst_surface, dst_rect); + + /* Restore the color key parameters */ +- wined3d_texture_set_color_key(src_surface->container, WINEDDSD_CKSRCBLT, ++ wined3d_texture_set_color_key(src_surface->container, WINEDDCKEY_SRCBLT, + (old_color_key_flags & WINEDDSD_CKSRCBLT) ? &old_blt_key : NULL); + + surface_validate_location(dst_surface, dst_surface->container->resource.draw_binding); +-- +2.2.1 + diff --git a/patches/wined3d-Color_Key/definition b/patches/wined3d-Color_Key/definition new file mode 100644 index 00000000..94a1319f --- /dev/null +++ b/patches/wined3d-Color_Key/definition @@ -0,0 +1 @@ +Fixes: [37748] Fix color key regression causing pink rectangles around text