349 lines
18 KiB
Text
349 lines
18 KiB
Text
The Wine development release 8.7 is now available.
|
|
|
|
What's new in this release:
|
|
- DXBC shader parsing delegated to vkd3d.
|
|
- More spool file improvements in the PostScript driver.
|
|
- Various bug fixes.
|
|
|
|
The source is available at:
|
|
|
|
https://dl.winehq.org/wine/source/8.x/wine-8.7.tar.xz
|
|
|
|
Binary packages for various distributions will be available from:
|
|
|
|
https://www.winehq.org/download
|
|
|
|
You will find documentation on https://www.winehq.org/documentation
|
|
|
|
You can also get the current source directly from the git
|
|
repository. Check https://www.winehq.org/git for details.
|
|
|
|
Wine is available thanks to the work of many people. See the file
|
|
AUTHORS in the distribution for the complete list.
|
|
|
|
----------------------------------------------------------------
|
|
|
|
Bugs fixed in 8.7 (total 17):
|
|
|
|
- #9932 Listview highlight issues when drag&drop enabled
|
|
- #23647 Street Fighter 4 Benchmark: Flickering screen with parallel rendering enabled
|
|
- #32089 Window resize enters endless cycle
|
|
- #32958 ReVolt 1207: Crashes when trying to play Stunt Arena
|
|
- #33487 Davar bible software not working
|
|
- #43672 Airscout program 1.2.0.5 does not load under wine 2.0.2
|
|
- #50249 Shapes On A Plane crashes on start
|
|
- #51625 Unravel fails to load
|
|
- #52322 wineserver memory leak during HTTPs download (Genshin Impact Launcher, Qt5)
|
|
- #54424 user32:edit - test_dbcs_WM_CHAR() fails on Windows in mixed locales
|
|
- #54464 Multiple games crash on launch (Sekiro: Shadows Die Twice GOTY, Dark Souls III)
|
|
- #54799 wininet:internet - test_InternetGetConnectedStateExA() fails in the Japanese and Chinese locales in Wine
|
|
- #54808 Access violation in ntdll when running Adolix Split and Merge PDF with .NET Framework installed
|
|
- #54815 wininet:internet - test_InternetErrorDlg() fails on Windows 10 1607
|
|
- #54844 Existing prefixes keep resetting to Win10 when wine is updated
|
|
- #54856 Final Fantasy XI Online: Opening movie doesn't play (redux part II).
|
|
- #54882 Conemu fails to start (cannot attach to process)
|
|
|
|
----------------------------------------------------------------
|
|
|
|
Changes since 8.6:
|
|
|
|
Alex Henrie (2):
|
|
kernel32/tests: Check that lpSectionBase != NULL before dereferencing.
|
|
ntdll: Increment offset by len in build_clr_surrogate_section.
|
|
|
|
Alexandre Julliard (18):
|
|
include: Add some CHPE definitions.
|
|
winedump: Dump hybrid metadata also for i386 CHPE modules.
|
|
include: Add the ARM64EC context structure.
|
|
include: Update the PEB and TEB structures.
|
|
zlib: Run source files through zlib2ansi to avoid K&R function definitions.
|
|
makedep: Avoid generating empty dependencies.
|
|
winedump: Print entry point names in code range lists.
|
|
kernelbase: Move to a higher address on 64-bit.
|
|
kernel32: Move to a higher address on 64-bit.
|
|
ntdll: Reimplement RtlSetBits() to set 32 bits at a time.
|
|
ntdll: Reimplement RtlClearBits() to clear 32 bits at a time.
|
|
ntdll: Reimplement RtlAreBitsSet() to check 32 bits at a time.
|
|
ntdll: Reimplement RtlAreBitsClear() to check 32 bits at a time.
|
|
ntdll: Reimplement RtlNumberOfSetBits() to check 32 bits at a time.
|
|
ntdll: Use a separate memory allocation for the kernel stack.
|
|
ntdll: Use nameless unions/structs for register contexts.
|
|
include: Add some new ProcThreadAttribute definitions.
|
|
winedump: Fix printing of code ranges in hybrid modules.
|
|
|
|
Alexandros Frantzis (5):
|
|
winewayland.drv: Initialize display devices once after process init.
|
|
tools: Support building Wayland protocol source files.
|
|
winewayland.drv: Use the output name reported by the compositor.
|
|
winewayland.drv: Basic support for Windows monitor positioning.
|
|
winewayland.drv: Infer and report Windows monitor positions.
|
|
|
|
Alistair Leslie-Hughes (1):
|
|
widl: Suppress a coverity warning.
|
|
|
|
Andrey Gusev (1):
|
|
dxgi: Update TRACE in dxgi_device_create_resource().
|
|
|
|
André Zwing (1):
|
|
ntdll: Print RPC_S_SERVER_UNAVAILABLE exceptions.
|
|
|
|
Anton Baskanov (7):
|
|
winegstreamer: Fix negative height image size calculation.
|
|
winegstreamer: Call init_gstreamer() in winegstreamer_create_video_decoder().
|
|
dsound: Remove the unused nAvgBytesPerSec field.
|
|
dsound: Remove redundant assignments to freqAdjustNum and freqAdjustDen.
|
|
dsound: Preserve freqAccNum value in DSOUND_RecalcFormat().
|
|
dsound: Acquire the lock when setting 3D buffer parameters.
|
|
dsound: Allocate big enough committedbuff up front.
|
|
|
|
Aurimas Fišeras (1):
|
|
po: Update Lithuanian translation.
|
|
|
|
Bernhard Übelacker (1):
|
|
ntoskrnl: Do not leak memory by setting input buffer to NULL.
|
|
|
|
Brendan Shanks (4):
|
|
winemac: Refactor constrain_window_frame() to use separate origin and size arguments.
|
|
winemac: Set the Cocoa window contentMaxSize to the size limits from constrain_window_frame().
|
|
winemac: Don't constrain surface dimensions to the onscreen part of a window.
|
|
msvcrt: Fix crash when rethrowing after a non-C++ exception on x86_64.
|
|
|
|
Byeong-Sik Jeon (2):
|
|
imm32: Stop updating INPUTCONTEXT hWnd member in ImmGetContext.
|
|
imm32: Avoid updating INPUTCONTEXT hWnd on ImmSetActiveContext deactivation.
|
|
|
|
Connor McAdams (12):
|
|
uiautomationcore: Implement UIA_ControlTypePropertyId for default HWND provider.
|
|
uiautomationcore: Implement UIA_BoundingRectanglePropertyId for default HWND provider.
|
|
uiautomationcore: Implement NavigateDirection_Parent navigation for default HWND provider.
|
|
uiautomationcore: Add a default ProviderType_Proxy MSAA bridge clientside provider.
|
|
uiautomationcore: Implement UiaGetRootNode.
|
|
uiautomationcore: Implement IUIAutomation::GetRootElement.
|
|
uiautomationcore: Implement conditional NavigateDirection_Parent navigation.
|
|
uiautomationcore: Add normalization navigation to UiaGetUpdatedCache.
|
|
uiautomationcore: Add UiaNodeFromFocus stub.
|
|
uiautomationcore: Implement UiaNodeFromFocus.
|
|
uiautomationcore: Implement IUIAutomation::GetFocusedElement{BuildCacheRequest}.
|
|
uiautomationcore: Retrieve runtime ID on UiaReturnRawElementProvider thread to prevent a deadlock.
|
|
|
|
Davide Beatrici (22):
|
|
winealsa: Export function to get AudioSessionWrapper object.
|
|
winecoreaudio: Export function to get AudioSessionWrapper object.
|
|
wineoss: Export function to get AudioSessionWrapper object.
|
|
winepulse: Export function to get AudioSessionWrapper object.
|
|
mmdevapi: Import GetAudioSessionWrapper() from driver.
|
|
mmdevapi: Implement AudioSessionManager.
|
|
winealsa: Remove AudioSessionManager.
|
|
winecoreaudio: Remove AudioSessionManager.
|
|
wineoss: Remove AudioSessionManager.
|
|
winepulse: Remove AudioSessionManager.
|
|
winealsa: Implement functions to lock and unlock sessions.
|
|
winecoreaudio: Implement functions to lock and unlock sessions.
|
|
wineoss: Implement functions to lock and unlock sessions.
|
|
winepulse: Implement functions to lock and unlock sessions.
|
|
winealsa: Use dedicated macros to call interface functions.
|
|
winecoreaudio: Use dedicated macros to call interface functions.
|
|
wineoss: Use dedicated macros to call interface functions.
|
|
winepulse: Use dedicated macros to call interface functions.
|
|
winealsa: Move AudioSessionControl into mmdevapi.
|
|
winecoreaudio: Use mmdevapi's AudioSessionControl.
|
|
wineoss: Use mmdevapi's AudioSessionControl.
|
|
winepulse: Use mmdevapi's AudioSessionControl.
|
|
|
|
Derek Lesho (1):
|
|
winegstreamer: Cache wg_parser input data.
|
|
|
|
Dmitry Timoshkov (1):
|
|
shell32/tests: Add SHBindToFolderIDListParent() tests.
|
|
|
|
Eric Pouech (6):
|
|
mf/tests: Add tests about (negative) stride handling.
|
|
winegstreamer: In video_processor, activate a videoflip converter.
|
|
winedbg: Let 'break symbol : line' command work again.
|
|
dbghelp: Use source file path as stored in debug info format.
|
|
winedbg: Simplify watch command implementation.
|
|
winedbg: Improve size management in watch command.
|
|
|
|
François Gouget (7):
|
|
user32/tests: Fix the DBCS WM_CHAR tests in mixed locales.
|
|
dnsapi/tests: Make DnsQuery()'s CNAME tests more compatible with CDNs.
|
|
wininet: Add constants for DetectAutoProxyUrl().
|
|
wininet/tests: Add more proxy tests.
|
|
kernel32/tests: Fix the ScrollConsoleScreenBuffer() tests on Windows 10 1909.
|
|
msi/tests: Fix the ok() formats so they match the size of their arguments.
|
|
msi/tests: Ok_() takes printf-style arguments.
|
|
|
|
Gabriel Ivăncescu (12):
|
|
mshtml: Implement MediaQueryList's addListener method.
|
|
mshtml: Implement MediaQueryList's removeListener method.
|
|
mshtml: Use proper event type for PageTransition events.
|
|
mshtml: Do not release the principal returned by GetPrincipal.
|
|
mshtml: Fix factory leak in init_nsio.
|
|
mshtml: Fix nsIFile dir leak in init_xpcom.
|
|
mshtml: Fix URI leak in NewURI on failure.
|
|
mshtml: Store minimum compat mode required for events in the ctor table.
|
|
mshtml: Support cycle collection for nsChannel.
|
|
mshtml: Fix nsChannel's load_info leak.
|
|
mshtml: Pass actual node_ccp to ccref_decr for nodes.
|
|
mshtml/tests: Fix element leak in elem_fire_event.
|
|
|
|
Giovanni Mascellani (11):
|
|
mfplat/tests: Test Lock2D() on a locked D3D9 surface buffer.
|
|
mfplat/tests: Test locking flags for D3D9 buffers.
|
|
mfplat/tests: Independently test that locking flags are ignored for D3D9 buffers.
|
|
mfplat: Fix locking flags usage for D3D9 buffers.
|
|
mfplat/tests: Test Lock2D() on a locked DXGI surface buffer.
|
|
mfplat/tests: Test locking flags for DXGI buffers.
|
|
mfplat: Do not mark a DXGI buffer as locked if surface mapping fails.
|
|
mfplat: Fix locking flags usage for DXGI buffers.
|
|
mfplat: Only download surface data from GPU for DXGI buffers when reading.
|
|
mfplat: Only upload surface data to GPU for DXGI buffers when writing.
|
|
mfplat/tests: Test that the content of DXGI buffers is discarded when locking for writing.
|
|
|
|
Hans Leidekker (1):
|
|
wine.inf: Use FLG_ADDREG_NOCLOBBER for CurrentMajor/MinorVersionNumber.
|
|
|
|
Henri Verbeet (12):
|
|
d3dcompiler: Check for minimum bytecode size in d3dcompiler_get_blob_part().
|
|
d3dcompiler: Check for minimum bytecode size in d3dcompiler_strip_shader().
|
|
d3dcompiler: Store DXBC sections as vkd3d_shader_dxbc_section_desc structures.
|
|
d3dcompiler: Use vkd3d_shader_serialize_dxbc() in d3dcompiler_get_blob_part().
|
|
d3dcompiler: Use vkd3d_shader_serialize_dxbc() in d3dcompiler_strip_shader().
|
|
d3dcompiler: Use vkd3d_shader_parse_dxbc() in d3dcompiler_get_blob_part().
|
|
d3dcompiler: Use vkd3d_shader_parse_dxbc() in d3dcompiler_strip_shader().
|
|
d3dcompiler: Use vkd3d_shader_parse_dxbc() in d3dcompiler_shader_reflection_init().
|
|
wined3d: Implement shader_extract_from_dxbc() on top of vkd3d_shader_parse_dxbc().
|
|
vkd3d: Update the version information for release 1.7.
|
|
d3d10: Implement d3d10_effect_parse() on top of vkd3d_shader_parse_dxbc().
|
|
d3d10: Implement parse_fx10_preshader() on top of vkd3d_shader_parse_dxbc().
|
|
|
|
Jactry Zeng (2):
|
|
appwiz.cpl: Process messages while waiting for the uninstaller to terminate.
|
|
appwiz.cpl: Handle WM_CLOSE and WM_COMMAND(IDCANCEL) in the support info dialog.
|
|
|
|
Jinoh Kang (6):
|
|
kernel32/tests: Test for activation context switching between fibers.
|
|
ntdll: Factor out reading current activation context into a helper function.
|
|
ntdll: Store current activation context stack pointer into a local variable.
|
|
ntdll: Use ActivationContextStackPointer instead of referencing ActivationContextStack directly.
|
|
ntdll: Implement RtlFreeActivationContextStack().
|
|
kernelbase: Implement activation context switching for fibers.
|
|
|
|
Martin Garton (1):
|
|
msvcrt: Fix typo in #define.
|
|
|
|
Matteo Bruni (2):
|
|
d3dcompiler/tests: Add a couple tests for minimum size in D3DGetBlobPart().
|
|
d3dcompiler/tests: Add a couple tests for minimum size in D3DStripShader().
|
|
|
|
Michael Stefaniuc (3):
|
|
threadpoolwinrt: Forward a Release() to a Release() method.
|
|
uiautomationcore: Drop superfluous TRUE : FALSE conditional expression.
|
|
win32u: Use ARRAY_SIZE() instead of open coding it.
|
|
|
|
Mohamad Al-Jaf (9):
|
|
include: Add windows.graphics.capture.interop.idl file.
|
|
include: Add appnotify.h file.
|
|
twinapi.appcore: Add stub DLL.
|
|
twinapi.appcore: Add RegisterAppStateChangeNotification stub.
|
|
twinapi.appcore: Add UnregisterAppStateChangeNotification stub.
|
|
apisetschema: Add api-ms-win-core-psm-appnotify-l1-1-0.
|
|
shell32: Implement SHBindToFolderIDListParent().
|
|
shell32/tests: Test SHBindToParent() last parameter behavior.
|
|
shell32: Fix last parameter behavior in SHBindToFolderIDListParent().
|
|
|
|
Paul Gofman (4):
|
|
ntdll: Mind LFH pending blocks in RtlDestroyHeap().
|
|
ntdll: Avoid integer overflow in block_get_subheap().
|
|
mfplat: Fix returned buffer length in dxgi_surface_buffer_lock().
|
|
wined3d: Add a comment about mismatched samplers.
|
|
|
|
Piotr Caban (36):
|
|
wineps: Rename handle count parameter in hmf_proc.
|
|
wineps: Set text and background color during device creation.
|
|
wineps: Handle EMR_EXTCREATEFONTINDIRECTW record in spool files.
|
|
wineps: Handle font selection in spool files.
|
|
wineps: Store text justification info in print processor data.
|
|
wineps: Handle EMR_EXTTEXTOUTW record in spool files.
|
|
wineps: Add BiDi support in EMR_EXTTEXTOUTW record.
|
|
wineps: Clip visible rectangle to bitmap size in get_vis_rectangles.
|
|
wineps: Handle EMR_CREATEPALETTE record in spool files.
|
|
wineps: Handle EMR_SELECTPALETTE record in spool files.
|
|
wineps: Handle EMR_SETDIBITSTODEVICE record in spool files.
|
|
wineps: Handle EMR_STRETCHDIBITS record in spool files.
|
|
wineps: Handle EMR_REALIZEPALETTE record in spool files.
|
|
wineps: Handle EMR_RESIZEPALETTE record in spool files.
|
|
wineps: Handle EMR_SETPALETTEENTRIES record in spool files.
|
|
gdi32: Use EMR_REALIZEPALETTE to record RealizePalette.
|
|
gdi32: Fix EMR_CREATEPALETTE recording.
|
|
gdi32: Store palette in EMR_EOF record.
|
|
gdi32/tests: Add EMF palette tests.
|
|
wineps: Fix default device font selection.
|
|
wineps: Fix return value in path drawing routines.
|
|
wineps: Continue printing if path drawing function returns error.
|
|
wineps: Reset memory DC state on every page.
|
|
localspl: Add support for PRINTER_ATTRIBUTE_RAW_ONLY printer attribute.
|
|
localspl: Validate datatype in StartDocPrinter.
|
|
wineps: Reset current position on every page.
|
|
gdi32: Store the printer info in a structure.
|
|
gdi32: Improve EMF DC cleanup when CloseEnhMetafile is not called.
|
|
gdi32: Factor out emf_eof helper.
|
|
gdi32: Factor out emf_create helper.
|
|
gdi32: Add support for creating EMF spool files.
|
|
gdi32: Add GdiIsMetaPrintDC implementation.
|
|
localspl: Add partial support for PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS attribute.
|
|
gdi32: Implicitly call StartPage while drawing on printer DC.
|
|
gdi32: Support creating EMRI_DEVMODE records in spool files.
|
|
wineps: Handle EMRI_DEVMODE record in spool files.
|
|
|
|
Rémi Bernon (11):
|
|
imm32/tests: Test that ImmSetOpenStatus doesn't set IMMGWL_IMC.
|
|
imm32/tests: Check IME UI visibility vs ImmSetCompositionWindow.
|
|
imm32/tests: Check ImmSetActiveContext effect on INPUTCONTEXT hWnd member.
|
|
imm32: Forward ImmGetContext to NtUserGetWindowInputContext directly.
|
|
user32: Move WM_IME_COMPOSITION DefWindowProc handlers in separate helpers.
|
|
user32: Ignore WM_IME_COMPOSITION from the IME UI window in DefWindowProc.
|
|
imm32: Don't hide/show IME UI window in ImmSetCompositionWindow.
|
|
imm32: Move ImmAssociateContext(Ex) around.
|
|
imm32: Update IME UI window IMMGWL_IMC when focus or HIMC changes.
|
|
imm32/tests: Add some ImmGenerateMessage tests.
|
|
imm32: Send messages one by one in ImmGenerateMessage.
|
|
|
|
Shaun Ren (2):
|
|
include: Add more sapi structs and enums.
|
|
include: Add ISpTTSEngineSite and ISpTTSEngine interfaces.
|
|
|
|
Stefan Dösinger (14):
|
|
d3dx9: Use __VA_ARGS__ instead of GCCs named variadics.
|
|
d3dx9/tests: Use __VA_ARGS__ instead of GCCs named variadics.
|
|
wined3d: Sync depth stencils to both early and late depth test.
|
|
wined3d: Avoid VK_IMAGE_LAYOUT_GENERAL.
|
|
wined3d: Fall back to general layout if necessary.
|
|
d3d9/tests: Radeon GPUs don't draw from sysmem textures.
|
|
d3d9/tests: Accept AMD GPU sysmem sample failure in test_mipmap_upload.
|
|
d3d8/tests: Radeon GPUs don't draw from sysmem textures.
|
|
d3d8/test: Accept AMD GPU sysmem sample failure in test_mipmap_upload.
|
|
d3dx9: Load D3DAssemble via GetProcAddress.
|
|
d3dcompiler/tests: Load D3DAssemble via GetProcAddress.
|
|
d3dcompiler: Make D3DAssemble a private export.
|
|
d3d9/tests: AMD GPUs sample the border color of cube textures.
|
|
d3d9/tests: Accept random depth when using a 3D texture with a 2D sampler.
|
|
|
|
Vova Mshanetskiy (2):
|
|
winhttp: Support WINHTTP_OPTION_PARENT_HANDLE in request_query_option().
|
|
winhttp: Avoid unnecessary cast in connect_query_option().
|
|
|
|
Zebediah Figura (8):
|
|
wined3d: Allow retrieving the frontbuffer from a wined3d swapchain.
|
|
ddraw: Retrieve the frontbuffer directly from wined3d.
|
|
wined3d: Disable shaderTessellationAndGeometryPointSize.
|
|
dxgi: Introduce IWineDXGIDeviceParent::register_swapchain_texture() and use it in IDXGIDevice::CreateSurface().
|
|
dxgi: Create d3d11 swapchain textures directly from d3d11_swapchain_init().
|
|
d3d9: Move surface allocation to d3d9_surface_create().
|
|
d3d9: Create sub-resource surfaces manually.
|
|
d3d9: Pass the container to d3d9_surface_create().
|
|
|
|
Ziqing Hui (3):
|
|
winegstreamer: Implement wg_format_from_caps_video_wmv.
|
|
wingstreamer: Create extra decodebin to decode compressed stream.
|
|
mfreadwrite: Fix an address of operator typo.
|