The Wine development release 8.5 is now available.
What's new in this release:
- Bundled vkd3d upgraded to version 1.7.
- Better error reporting in the IDL compiler.
- Support for shared Wow64 Classes registry key.
- More cleanups in IME support.
- Support for configuring a WinRT dark theme.
- Various bug fixes.
The source is available at:
https://dl.winehq.org/wine/source/8.x/wine-8.5.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.5 (total 21):
- #44547 Deus Ex: invisible War v1.2 crashes when using the hotkey to quickload a saved game
- #46562 Notepad++ 7.6.3 crashes when searching twice and first time found results
- #47326 Fair Strike fails to map joystick due to IDirectInputDevice8 SetActionMap being a semi-stub.
- #53704 Bible Black ~La Noche de Walpurgis~ won't start
- #53794 Sins of the Solar Empire Rebellion (Gog 1.975.1) crashes on unimplemented function concrt140.dll.?_CheckTaskCollection@_UnrealizedChore@details@Concurrency@@IAEXXZ
- #53981 Chromium broken sandbox due to GetSecurityInfo giving access denied
- #54560 mscoree:mscoree - test_loadpaths_execute() sometimes gets directory creation errors
- #54618 VARA FM crashes on unimplemented function pdh.dll.PdhVbGetDoubleCounterValue
- #54640 Treecomp listviews and possibly other widgets are not drawn
- #54675 Chocolatey OpenSSH installer fails
- #54679 Conspiracy's Clean Slate 64K demo crashes due to HLSL shader compilation failure
- #54687 LibreVR Revive fails to run (CertGetNameStringW with dwType=CERT_NAME_ATTR_TYPE and pvTypePara missing additional fallbacks)
- #54691 reg.exe:copy, reg.exe:delete, reg.exe:export, reg.exe:import & reg.exe:query (+32-bit reg.exe:add) - The 64-bit tests fail due to ERROR_ACCESS_DENIED errors in Wine
- #54701 Ultimate Race Pro crashes after intro movies
- #54702 ldp.exe crashes when attempting to add, delete, modify, or compare an entry without a name
- #54707 adsldp:ldap - test_DirectorySearch() fails on Windows and Linux
- #54710 imm32:imm32 - test_ImmEscape() fails in the Korean locale on Windows
- #54711 imm32:imm32 - test_ImmGetProperty() fails in the Korean locale on Windows
- #54724 LDAP bind over SSL to a server and port that do not support SSL hangs forever
- #54727 LDAP Explorer (LEX) throws an exception when attempting to connect over SSL
- #54729 wine build fails with bison 3.0.5
----------------------------------------------------------------
Changes since 8.4:
Alex Henrie (14):
include: Annotate LDAP allocation functions with __WINE_(DEALLOC|MALLOC).
wldap32: Handle null DN or null message in ldap_add* and add tests.
wldap32: Handle null DN or null message in ldap_modify* and add tests.
include: Annotate ldap_(*_attribute|get_dn)* with __WINE_(DEALLOC|MALLOC).
wldap32: Annotate allocation functions with __WINE_(DEALLOC|MALLOC).
wldap32: Handle null DN or null attr in ldap_compare* and add tests.
include: Allow multiple definitions on GCC with DECLSPEC_SELECTANY.
wldap32/tests: Use the same context in test_ldap_(add|modify_compare).
wldap32: Handle null DN or null message in ldap_delete* and add tests.
wldap32: Implement setting LDAP_OPT_SSL and add tests.
wldap32: Stub out setting LDAP_OPT_REFERRAL_HOP_LIMIT.
wldap32: Implement ldap_connect.
wldap32: Return ~0u from ldap_modrdn* for any error.
wldap32: Implement setting LDAP_OPT_SERVER_CERTIFICATE and add tests.
Alexandre Julliard (17):
widl: Pass the correct parent name when opening an import file.
include: Declare some missing ntdll functions, and fix the sorting.
kernelbase: Use RtlGetNativeSystemInformation() to implement GetNativeSystemInfo().
wow64: Allow the CPU backend to override CPU information.
wow64: Convert token and debug port in NtCreateUserProcess().
ntdll: Fixup CPU information for old Wow64 mode.
ntdll: Add a helper function to check for old-style Wow64 mode.
ntdll: Add a helper function to check for Wow64 mode.
ntdll: Use get_wow_teb() and wow_peb in more places.
vkd3d: Import upstream release 1.7.
ntdll: One more fix for CPU information in old Wow64 mode.
ntdll: Convert WoW context to native context when running in 32-bit code.
ntdll: Fully initialize the i386 FPU context on ARM64.
kernelbase: Fix pattern checking for genitive month names in get_date_format().
d3dcompiler/tests: Update todos for tests that succeed with vkd3d 1.7.
ntdll: Add a helper function to return the alternate 32/64 loader.
ntdll: Only fall back to start.exe when using a different loader.
Alistair Leslie-Hughes (7):
msado15: Bind fields in _Recordset Open.
msado15: Store all data from provider.
include: Add Missing IUISettings interfaces.
windows.ui: Add Stubbed interface IUISettings.
windows.ui: Add IUISettings2 stub interface.
windows.ui: Use DEFINE_IINSPECTABLE for IUISettings3.
msado15: Handle DBTYPE_STR type when loading recordset data.
Bernhard Kölbl (1):
windows.media.speech/tests: Allow recognizer state to be idle during active recognition session.
Biswapriyo Nath (5):
include: Add IDirectManipulationInteractionEventHandler declaration in directmanipulation.idl.
include: Add missing TS_STATUS constants in textstor.idl.
include: Fix c++ compiler error with msxml2.idl.
include/windows.system.idl: Update file to newer formatting.
include: Add Windows.System.DispatcherQueue definition.
Brendan Shanks (2):
winemac: Fix memory leak in UpdateDisplayDevices.
ntdll: Print correct thread rename trace when using current thread ID with exception method.
Carlos Rodriguez (1):
wined3d: Add GPU information for another Intel UHD 630 GPU.
Connor McAdams (12):
uiautomationcore: Add stub IUIAutomationTreeWalker implementation.
uiautomationcore: Implement IUIAutomationTreeWalker::Get{First/Last}ChildElement{BuildCache}.
uiautomationcore: Implement IUIAutomationTreeWalker::Get{Previous/Next}SiblingElement{BuildCache}.
uiautomationcore: Implement IUIAutomationTreeWalker::GetParentElement{BuildCache}.
uiautomationcore/tests: Skip IAccessible2 tests on Win10v1909.
uiautomationcore/tests: Add NULL input argument tests for IUIAutomationTreeWalker navigation method.
uiautomationcore: Add a helper function for retrieving a property value from an individual node provider.
uiautomationcore: Add support for UIA_ProviderDescriptionPropertyId.
uiautomationcore: Add support for UIA_IsOffscreenPropertyId to MSAA providers.
uiautomationcore: Add support for UIA_LegacyIAccessibleChildIdPropertyId.
uiautomationcore: Add support for UIA_LegacyIAccessibleRolePropertyId.
uiautomationcore: Implement ILegacyIAccessibleProvider::get_Role for MSAA providers.
Eric Pouech (2):
kernel32/tests: Extend the tests for load/unload debug events on Wow64.
wow64: Move filter of (un)load DLL debug events to client side.
Etaash Mathamsetty (6):
kernel32: Add semi-stub for CreateFileTransactedA/W().
kernel32: Add semi-stub for CreateDirectoryTransactedA/W().
kernel32: Add semi-stub for DeleteFileTransactedA/W().
kernel32: Add semi-stub for FindFirstFileTransactedA/W().
kernel32: Add semi-stub for GetFileAttributesTransactedA/W().
kernel32: Add semi-stub for RemoveDirectoryTransactedA/W().
Floris Renaud (1):
po: Update Dutch translation.
François Gouget (16):
mscoree/tests: Avoid temporary directory name collisions.
imm32/tests: Document the WINE_LANGID value.
widl: Error_loc() messages must have a trailing linefeed.
schtasks/tests: Deleting folders requires elevated privileges on Windows 7 & 8.
schtasks/tests: Verify that the task folders are correctly deleted.
schedsvc/tests: Use __HRESULT_FROM_WIN32() to initialize constants.
schedsvc/tests: Use wide character string literals in rpcapi.c.
schedsvc/tests: Use a winetest context in the rpcapi loops.
schedsvc/tests: Document SchRpcGetTaskInfo() calls that crash on Windows.
schedsvc/tests: Deleting tasks & folders requires elevated privileges on Windows 7.
taskschd/tests: Use __HRESULT_FROM_WIN32() to initialize constants.
taskschd/tests: Store the xml definitions as wide string literals in scheduler.c.
taskschd/tests: Use wide character string literals in scheduler.c.
taskschd/tests: Use a winetest context in the scheduler loops.
taskschd/tests: Elevated privileges are needed to connect using a hostname.
taskschd/tests: Deleting tasks & folders requires elevated privileges on Windows 7.
Gabriel Ivăncescu (5):
mshtml: Fix nsevent leak in create_document_event.
mshtml: Fix nsscript leak in bind_event_scripts.
mshtml: Share reference with the node for Gecko DOM Documents.
mshtml: Fix nsuri leak if create_channelbsc failed.
mshtml: Fix nsparser leak if script_elem_from_nsscript failed.
Georg Lehmann (1):
winevulkan: Update to VK spec version 1.3.246.
Hans Leidekker (2):
adsldp/tests: Fix test failures.
ldap: Return an error when the server doesn't respond to the SSL handshake.
Huw D. M. Davies (1):
win32u: Fix printf format warnings.
Jinoh Kang (3):
kernel32/tests: Test for manifest file open share mode in CreateActCtxW.
ntdll: Open application manifest files with FILE_SHARE_DELETE.
ntdll: Don't report user (PE) stack via pthread_attr_setstack().
Louis Lenders (1):
wine.inf: Add EditionID to HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion.
Marc-Aurel Zent (1):
iphlpapi: Return FALSE for bad handles in IcmpCloseHandle.
Max Figura (10):
wined3d: Move the WINED3D_RS_TWEENFACTOR stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_POSITIONDEGREE stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_NORMALDEGREE stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_MINTESSELLATIONLEVEL stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_MAXTESSELLATIONLEVEL stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_ADAPTIVETESS_X stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_ADAPTIVETESS_Y stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_ADAPTIVETESS_Z stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_ADAPTIVETESS_W stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_ENABLEADAPTIVETESSELLATION stub to wined3d_device_apply_stateblock.
Michael Stefaniuc (11):
msdasql: Remove redundant NULL check before heap_free().
windows.media.speech: Remove redundant NULL check before free().
dinput/tests: Use separate statements instead of the comma operator.
jscript: Use separate statements instead of the comma operator.
dmsynth: Don't crash when Open() gets a DMUS_PORTPARAMS7.
dinput/tests: Drop superfluous TRUE : FALSE conditional expressions.
dinput: Remove superfluous cast to self.
uiautomationcore/tests: Drop superfluous TRUE : FALSE conditional expression.
ntdll/tests: Use FAILED() instead of not SUCCEEDED().
wmvcore/tests: Don't cast NULL to another pointer type.
mfplat/tests: Remove duplicated ok() call.
Mohamad Al-Jaf (11):
include: Add windows.graphics.effects.idl file.
include: Add windows.graphics.capture.idl file.
graphicscapture: Add stub DLL.
graphicscapture: Add IGraphicsCaptureSessionStatics stub interface.
graphicscapture/tests: Add IGraphicsCaptureSessionStatics::IsSupported() tests.
graphicscapture: Partially implement IGraphicsCaptureSessionStatics::IsSupported().
winecfg: Add an option to set WinRT app dark theme.
cfgmgr32: Implement CM_MapCrToWin32Err.
cfgmgr32/tests: Add CM_MapCrToWin32Err tests.
include: Add DirectXAlphaMode enum.
include: Add windows.ui.core.idl file.
Nikolay Sivov (15):
d3d10/effect: Add support for itof instruction.
d3d10/effect: Add support for ineg instruction.
d3d10/effect: Add support for imax instruction.
d3d10/effect: Add support for udiv instruction.
d3dcompiler: Always initialize output shader blob pointer in D3DCompile2().
d3dcompiler: Allow D3DCompile2() to succeed with null output shader blob pointer.
d3dcompiler: Always free messages string in D3DCompile2().
d3dcompiler: Fix bytecode buffer leaks in D3DCompile2().
d3d10/effect: Add support for 'movc' instruction.
d3d10/effect: Handle division by zero in 'udiv'.
d3d10/effect: Add support for asin/acos/atan instructions.
d3d10/effect: Add support for umin/umax instructions.
d3d10/effect: Add support for 'imin' instruction.
d3d10/effect: Add support for 'iadd' instruction.
d3d10/tests: Add some tests for trigonometric functions.
Paul Gofman (15):
crypt32: Support user properties for certificates.
crypt32: Use CERT_STORE_ADD_ALWAYS when reading certs from registry.
crypt32: Refactor CRYPT_ImportSystemRootCertsToReg().
crypt32: Refactor read_trusted_roots_from_known_locations().
crypt32: Keep root certs cached in registry unless some are deleted on host.
taskkill: Use CRT allocation functions.
taskkill: Remove unneeded free() before process exit.
taskkill: Enumerate processes in main().
taskkill: Factor out get_task_pid().
taskkill: Use toolhelp snapshot to get process information.
taskkill: Mark processes for termination in main().
taskkill: Support terminating child processes.
services: Create service processes in a job.
services: Factor out notify_service_state() function.
services: Change running service state once its process dies.
Piotr Caban (49):
wineps: Move more code into create_psdrv_physdev helper.
wineps: Create fake PSDRV_PDEVICE OpenPrintProcessor.
wineps: Initialize PSDRV_PDEVICE print job information in PrintDocumentOnPrintProcessor.
wineps: Write document header and footer in PrintDocumentOnPrintProcessor.
wineps: Handle EMR_HEADER record in spool files.
wineps: Handle EMR_EOF record in spool files.
wineps: Handle brush selection in spool files.
wineps: Handle pen selection in spool files.
wineps: Handle EMR_RECTANGLE record in spool files.
wineps: Handle EMR_MOVETOEX record in spool files.
wineps: Handle EMR_LINETO record in spool files.
wineps: Handle EMR_CREATEMONOBRUSH record in spool files.
wineps: Handle EMR_CREATEDIBPATTERNBRUSHPT record in spool files.
wineps: Handle EMR_SETWORLDTRANSFORM record in spool files.
wineps: Handle EMR_MODIFYWORLDTRANSFORM record in spool files.
wineps: Handle EMR_POLYBEZIER record in spool files.
wineps: Handle EMR_POLYPOLYLINE record in spool files.
wineps: Handle EMR_POLYPOLYGON record in spool files.
wineps: Handle EMR_SETPIXELV record in spool files.
wineps: Handle EMR_ELLIPSE record in spool files.
wineps: Handle EMR_ROUNDRECT record in spool files.
wineps: Handle EMR_ARC record in spool files.
wineps: Handle EMR_CHORD record in spool files.
wineps: Handle EMR_PIE record in spool files.
ucrtbase: Add __CxxFrameHandler4 implementation.
wineps: Introduce helper for PolyBezier drawing.
wineps: Handle EMR_POLYGON record in spool files.
wineps: Handle EMR_POLYLINE record in spool files.
wineps: Handle EMR_POLYBEZIERTO record in spool files.
wineps: Handle EMR_POLYLINETO record in spool files.
wineps: Handle EMR_ARCTO record in spool files.
wineps: Handle EMR_POLYBEZIER16 record in spool files.
wineps: Handle EMR_POLYGON16 record in spool files.
wineps: Handle EMR_POLYLINE16 record in spool files.
wineps: Handle EMR_POLYBEZIERTO16 record in spool files.
wineps: Handle EMR_POLYLINETO16 record in spool files.
wineps: Handle EMR_POLYPOLYLINE16 record in spool files.
wineps: Handle EMR_POLYPOLYGON16 record in spool files.
wineps: Support arc direction in PSDRV_DrawArc.
wineps: Handle EMR_ANGLEARC record in spool files.
wineps: Handle EMR_PAINTRGN record in spool files.
wineps: Handle EMR_SETWINDOWEXTEX record in spool files.
wineps: Handle EMR_SETWINDOWORGEX record in spool files.
wineps: Handle EMR_SETVIEWPORTEXTEX in spool files.
wineps: Handle EMR_SETVIEWPORTORGEX record in spool files.
wineps: Handle EMR_SETBRUSHORGEX in spool files.
wineps: Handle EMR_SETARCDIRECTION record in spool files.
wineps: Handle EMR_STRETCHBLT record in spool files.
wineps: Handle EMR_BITBLT record in spool files.
Rémi Bernon (105):
win32u/tests: Test NtUserCreateInputContext (et al.)
win32u: Stub NtUserBuildHimcList syscall.
win32u/tests: Test NtUserBuildHimcList syscall.
win32u: Introduce new next_process_user_handle_ptr helper.
win32u: Implement NtUserBuildHimcList syscall.
dinput: Rewrite IDirectInputDevice8W_BuildActionMap.
dinput: Pass device object format index to queue_event.
dinput: Pass additional information to enum_object callback.
dinput: Split enum_objects_count helper from enum_objects_init.
dinput: Call enum_objects to initialize the device object format.
widl: Simplify uuid literals lexing.
widl: Remove unused lexer aliases.
widl: Simplify preprocessor directive lexing.
widl: Simplify reserved keywords lexing.
widl: Lex calling convention variations toghether.
imm32/tests: Remove GetLastError check on default IME ImmEscape tests.
imm32/tests: Update ImmGetProperty expectations for Korean locale.
dinput/tests: Flush messages after creating the test_mouse_keyboard window.
dinput: Count the actual number of object formats in SetActionMap.
dinput: Initialize device object format when creating devices.
dinput: Move mouse_create_device function around.
dinput: Always allocate and initialize the object_properties.
dinput: Initialize SetActionMap variables in their declarations.
dinput: Always set the DIPROP_BUFFERSIZE property in SetActionMap.
dinput: Only set DIPROP_RANGE in SetActionMap if range isn't empty.
dinput: Use 4 bytes for every object user state in SetActionMap.
dinput: Initialize object formats from device objects in SetActionMap.
dinput: Respect DIA_APPNOMAP in IDirectInputDevice8W_SetActionMap.
dinput: Return error from SetActionMap if SetDataFormat fails.
dinput: Keep device objects app data in the object properties.
dinput: Allow action formats with no matching actions.
dinput: Check IDirectInputDevice8W_SetActionMap flags.
dinput: Return DI_SETTINGSNOTSAVED when DIDSAM_FORCESAVE is used.
imm32: Implement ImmEnumInputContext.
imm32: Remove unnecessary threadDefault InputContextData member.
imm32: Remove unused IMM_IsCrossThreadAccess hwnd parameter.
imm32: Use NtUserQueryInputContext to check cross-thread access.
imm32: Rename InputContextData to struct imc.
widl: Rename (error|warning)_loc_info to (error|warning)_at.
widl: Allow source location to span over multiple lines.
widl: Move diagnostic and location functions to parser.l.
widl: Enable bison locations option.
widl: Improve accuracy of error messages location.
widl: Print the import stack and context in messages.
imm32: Fix ImmEscape(A|W) with NULL data.
imm32: Fix ImmEnumRegisterWord(A|W) callback conversion.
imm32/tests: Reduce test output unnecessary verbosity.
imm32: Stub ImmActivateLayout.
imm32/tests: Test undocumented ImmActivateLayout.
widl: Use spaces to indent attribute rules more consistently.
widl: Move attribute related functions to attribute.c.
widl: Simplify attribute creation with either int or ptr value.
widl: Remove custom attribute creation helper.
widl: Add source location information to attributes.
widl: Use warning_at when reporting duplicate attributes.
widl: Define PARSER_LTYPE instead of api.location.type.
dinput/tests: Test BuildActionMap cases with multiple devices.
dinput/tests: Add more IDirectInput8_EnumDevicesBySemantics tests.
dinput: Trace formats in (Build|Set)ActionMap and EnumDevicesBySemantics.
dinput: Load action map from registry before resetting guid.
dinput: Check device type in BuildActionMap for specific semantics.
dinput: Implement DIDBAM_PRESERVE BuildActionMap flag.
dinput: Rewrite IDirectInput8_EnumDevicesBySemantics.
win32u: Allow LANG_INVARIANT in NtUserActivateKeyboardLayout.
imm32: Use installed IME language for the created HKL.
imm32/tests: Check current keyboard layout during ime calls.
imm32: Call ActivateKeyboardLayout from ImmActivateLayout.
imm32/tests: Test ImmCreateInputContext et al.
imm32/tests: Test ActivateKeyboardLayout with an existing window.
imm32: Enumerate input contexts in ImmActivateLayout.
imm32: Introduce a new imc_select_hkl helper.
imm32: Update HIMC private data when selecting IME.
imm32: Call ImeSelect from ImmLockIMC with current IME.
imm32/tests: Add explicit ImmLoadIME / ImmFreeLayout calls.
imm32/tests: Ignore expected calls marked with todo.
imm32: Cleanup ImmProcessKey variables and traces.
imm32: Ignore ImmProcessKey if hkl isn't the current layout.
imm32/tests: Test ImmProcessKey with the installed IME.
imm32/tests: Test IME UI creation with the installed IME.
imm32/tests: Test IME UI window and IME window presence.
imm32: Update existing input contexts on layout change.
imm32: Keep the IME UI window on the default input context.
imm32: Re-create the IME UI window when IME changes.
imm32: Create the IME UI as child of the IME default window.
imm32/tests: Test DefWindowProc with IME UI messages.
win32u: Ignore IME messages from IME UI windows in DefWindowProc.
win32u: Ignore some IME messages in default_window_proc.
imm32: Pass the HIMC to the IME UI window IMMGWL_IMC.
imm32: Send WM_IME_SELECT messages when IME is activated.
imm32: Select current IME on input contexts when needed.
imm32: Introduce new input_context_init helper.
imm32: Add a default implementation for IME functions.
imm32: Return TRUE from ImmIsIME with any HKL.
winex11: Use the default IME implementation for stubs.
winemac: Use the default IME implementation for stubs.
imm32/tests: Add some ImmSetConversionStatus tests.
imm32/tests: Add some ImmSetOpenStatus tests.
imm32: Avoid recursing into ImeSelect calls.
imm32/tests: Init INPUTCONTEXT status in ImeSelect.
imm32/tests: Add some ImeSetActiveContext tests.
imm32/tests: Add some spurious IME select calls.
imm32/tests: Add some ImmRequestMessageW tests.
imm32/tests: Add some ImmGetCandidateList(W|A) tests.
imm32/tests: Add some ImmGetCandidateListCount(W|A) tests.
imm32/tests: Add some ImmGetCandidateWindow tests.
Shaun Ren (1):
quartz: Set filter sync source in FilterGraph2_AddFilter.
Stefan Dösinger (3):
wined3d: Make video memory accounting a per-resource flag.
ddraw/tests: Native 64 bit ddraw has a video memory leak.
ddraw/tests: Show that SYSMEM | 3DDEVICE surfaces don't consume vidmem.
Sven Baars (12):
advapi32/tests: Copy Software\Classes tests from ntdll.
kernelbase: Call open_key() from open_subkey().
kernelbase: Use open_key() to obtain any existing Wow6432node in create_key().
kernelbase: Pass a name pointer to open_key().
kernelbase: Return the last existing key from open_key() when it's called from create_key().
kernelbase: Don't open Wow6432nodes from create_key().
kernelbase: Factor creating a subkey out of create_key().
kernelbase: Call create_key() from create_subkey().
kernelbase: Add support for shared registry keys.
kernelbase: Recursively obtain the Wow6432Node parent.
kernelbase: Remove special Wow64 handling for HKEY_CLASSES_ROOT.
wine.inf: Put the Clients key in the right place.
Torge Matthies (5):
msvcr100: Only wake task collection waiters when finished >= count.
msvcr100: Use enum for _StructuredTaskCollection return value.
msvcr100: Use enum for _StructuredTaskCollection status bits.
msvcr100: Implement _StructuredTaskCollection canceling.
msvcr100: Implement _StructuredTaskCollection::_IsCanceling.
Tyson Whitehead (3):
crypt32: Add some CertGetNameStringW fallback cases.
crypt32/tests: Test for CertGetNameStringW fallback cases.
crypt32/tests: Document fields in original test certificate.
Vicki Pfau (1):
hidparse.sys: Include zero-count reports in cap count.
Vijay Kiran Kamuju (1):
msvcr100: Add _UnrealizedChore::_CheckTaskCollection stub.
Zebediah Figura (15):
ddraw: Factor out a ddraw_texture_rename_to() helper from ddraw_surface1_Flip().
wined3d: Pass parent ops to wined3d_texture_set_sub_resource_parent().
wined3d: Pass parent ops to wined3d_resource_set_parent().
ddraw: Move sub-resource surface creation to ddraw_texture_init().
ddraw: Make ddraw_surface_init() static.
include: Use hexadecimal constants for XAudio flags.
include: Add D3D10CalcSubresource().
d3d10core/tests: Add a broken() case for WARP in test_occlusion_query().
d3d11/tests: Add a broken() case for WARP in test_occlusion_query().
ddraw/tests: Add some tests for creating surfaces with user memory.
wined3d: Pass parent ops to wined3d_rendertarget_view_set_parent().
ddraw: Reimplement SetSurfaceDesc() by recreating the wined3d texture(s).
ddraw/tests: Make test_texture_wrong_caps() a bit clearer.
include: Include corecrt.h in vadefs.h.
winedevice: Use the ntoskrnl channel.
Zhiyi Zhang (1):
dwrite: Use cache when font transform matrix contains only translation offsets.
Ziqing Hui (5):
mf/tests: Test time length returned by ProcessOutput.
winegstreamer: Add format field to wmv wg_format.
winegstreamer: Ignore framerate of media type for WMV decoder DMO.
winegstreamer: Create wg_transform for WMV decoder.
winegstreamer: Implement ProcessInput and ProcessOutput for WMV decoder DMO.
The Wine stable release 7.0.2 is now available.
What's new in this release:
- Various bug fixes
The source is available at:
https://dl.winehq.org/wine/source/7.0/wine-7.0.2.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 7.0.2 (total 43):
- #36711 Sid Meier's Civilization IV crashes while loading saved game (GOG.com complete, Colonization, Warlords, Beyond the Sword)('winetricks -q msxml3' is a workaround)
- #39346 Lego Rock Raiders crashes on startup (d3drm_device_init doesn't handle device version 3 case)
- #40444 Find doesn't jump to a found item in WinSCP when editing a file
- #42751 Multiple applications crash on unimplemented function msvcr{100,110}.dll.?_Schedule@_StructuredTaskCollection@details@Concurrency@@QAEXPAV_UnrealizedChore@23@@Z (Gas Guzzlers Combat Carnage, Clip Studio Paint, Cube World, Intel ACAT)
- #42857 Can't select a fixture in FreeStyler's fixture editor
- #44814 cygwin's bsdtar.exe needs a better ntdll.NtQueryEaFile stub
- #46822 Edit control in ADL search dialog gets initially not drawn in DC++ 0.868, regression
- #47375 Multiple applications crash on unimplemented function msvcr120.dll.?_Schedule@_StructuredTaskCollection@details@Concurrency@@QEAAXPEAV_UnrealizedChore@23@@Z (Photoshop C 2018, CLIP Studio Paint)
- #48487 MSYS based Git 2.25 installer reports 'could not decode hex <hexstring>' (needs support for CryptStringToBinaryW CRYPT_STRING_HEX)
- #48600 Bloomberg Terminal needs unimplemented function dbghelp.dll.SymSrvGetFileIndexInfo
- #49285 PNotesPortable crashes inside WritePrivateProfileStructW
- #50948 taskmgr.exe: wrong memory usage unit (GB => MB)
- #51788 windowscodecs:wmpformat test_decode() fails randomly
- #51842 include/winnt.h:403:50: error: size of unnamed array is negative
- #52457 CNG Encryption Failure (BCryptEncrypt)
- #52534 ListView: multi select never sends LVN_ODSTATECHANGED
- #52545 ACE rights parser should allow octal and decimal formats
- #52686 DateAdd not implemented
- #52831 Kernel32::GetSystemPowerStatus returns invalid data if /sys/class/power_supply/BAT0 is missing
- #52841 Leverless arcade controller SOCD cleaning does not work
- #52972 wineusb.sys: add_usb_device erroneously releases critical section on failure path
- #52975 VTFEdit fails to start: err:module:LdrInitializeThunk "MSVCP80.dll" failed to initialize, aborting
- #53003 XM6 TypeG: some MIDI note-on messages aren't sent to MIDI devices (MIDI running status isn't supported in the MIDI mapper)
- #53005 quartz:systemclock Fails after timeGetTime() wraps
- #53027 Port Royale 4 crashes with wined3d_texture*
- #53032 winedevice.exe segfaults on exit when built with GCC
- #53051 Kvaser software crashes on unimplemented function ntoskrnl.exe.ExNotifyCallback
- #53123 ListView: Ctrl+Shift+LMouse multiselect on LVS_OWNERDATA listviews erroneously sends LVN_ODSTATECHANGED
- #53169 Rich edit control becomes unstable or trips assertion after ITextRange::SetFont is called
- #53170 Rich edit control becomes unstable or trips assertion after changing TextFont properties
- #53234 nsi:nsi - test_ndis_ifinfo() fails randomly on Windows 10 1507
- #53310 Roblox Fails With HttpSendRequest
- #53335 Crash when converting an rich text editor already containing text into a password input
- #53455 shell32:recyclebin - test_query_recyclebin() gets unexpected recyclebin size in Wine
- #53569 postgresql installer 9.3 needs correct string length returned from fso.GetTempName
- #53587 comctl32 GetWindowSubclass crash in Notepad++ (v8.4.3 and 8.4.4 only)
- #53614 KeePassXC crashes on unimplemented function msvcp140.dll.?ReportUnhandledError@_ExceptionHolder@details@Concurrency@@AEAAXXZ
- #53645 AIMP 3 causes memory leaks
- #53706 NtDeviceIoControlFile() is quite slow when called with and invalid handle
- #53714 SQLGetInfo(W) doesn't fill StringLength when InfoValue is NULL
- #53800 CRYPT_GetBuiltinDecoder Unsupported decoder for lpszStructType 1.3.6.1.4.1.311.2.1.4
- #53821 winbase.h: ReOpenFile declaration missing (and not available in any other header)
- #53832 wbemprox: where-clause seems to be case-sensitive
----------------------------------------------------------------
Changes since 7.0.1:
Akihiro Sagawa (2):
midimap: Handle MIDI running status.
mciqtz32: Fix thread handle leak if a second play.
Alex Henrie (3):
ntoskrnl: Add ExNotifyCallback stub.
ntdll: Don't hard-code the battery and AC adapter names on Linux.
user32: Plug icon handle leak in MDI_AugmentFrameMenu (Coverity).
Alexandre Julliard (5):
shell32: Don't return an uninitialized pointer on error in enum_trash_items().
urlmon/tests: Fix race condition in abort test.
mountmgr: Don't crash if connecting to dbus fails.
gdiplus: Get the compositing mode directly from the graphics object.
gitlab: Add workaround for more strict git ownership check.
Alistair Leslie-Hughes (8):
d3drm: Support IDirect3D3 when creating device.
ntdll: Check return parameter before use.
ntdll: RtlFirstFreeAce only return FALSE on error.
ntdll/tests: Add RtlFirstFreeAce tests.
dsdmo: Add Echo FX Support.
dsdmo: Add Compressor FX Support.
odbc: SQLGetInfoW allow NULL parameter InfoValue.
crypt32: Only report Unimplemented decoder when not found in external dll.
Angelo Haller (9):
comctl32/tests: Add hold_key and release_key functions.
comctl32/tests: Add multi select tests for ownerdata listviews.
comctl32/tests: Add change sequence for ownerdata listviews.
comctl32/listview: Send one deselect all items notification for LVS_OWNERDATA listviews.
comctl32/listview: Move sending LVN_ODSTATECHANGED notifications to a function.
comctl32/listview: Send LVN_ODSTATECHANGED only for LVS_OWNERDATA listviews.
comctl32/listview: Send LVN_ODSTATECHANGED notification for LVS_OWNERDATA listview on selection changes.
comctl32/listview: Don't send LVN_ODSTATECHANGED for empty ranges.
comctl32/tests: Add more ownerdata listview tests.
Claire Girka (1):
winepulse: Fix memory leak in pulse_create_stream in some error cases.
Daniel Lehman (1):
kernelbase: Pass va_list copy to internal RtlFormatMessage.
David Curtiss (1):
ws2_32: Allow getsockname after AcceptEx.
David Kahurani (2):
win32u: Use allocator mechanism to allocate DC attributes.
ieframe: Fix memory leak in open_dde_url.
Dmitry Timoshkov (2):
comctl32/tests: Add iItem and uChanged to LVN_ITEMCHANGING/LVN_ITEMCHANGED context.
sechost: Support decimal or octal access rights in ConvertStringSecurityDescriptorToSecurityDescriptor.
Eric Pouech (2):
wldap32: Fix compilation in 32-bit.
winedbg: Fix retrieving integral values.
Esme Povirk (1):
wmphoto: Zero user buffer before calling jxrlib Copy.
Fabian Maurer (1):
kernel32: Prevent null pointer dereference in WritePrivateProfileStructW.
Gijs Vermeulen (2):
dbghelp: Add SymSrvGetFileIndexInfo stub.
msvcp140: Add _ExceptionHolder::ReportUnhandledError stub.
Hans Leidekker (4):
wininet: Remove assertion that is no longer valid in Windows 10.
wininet: Always reset the second input buffer in netcon_secure_connect_setup().
bcrypt: Force symmetric key reset if necessary.
wbemprox: WQL string comparisons are case insensitive.
Hugh McMaster (1):
conhost: Set correct face name when the specified font is not available.
Huw D. M. Davies (1):
nsi: Use the correct members for the error and discard counts.
Jeff Smith (2):
d3drm/tests: Clean up some magic values.
d3drm: Fix components of palette built when loading texture from file.
Jinoh Kang (3):
wineusb.sys: Remove erroneous call to LeaveCriticalSection() in add_usb_device.
riched20: Commit and wrap paragraphs after changing text properties.
riched20: Ensure MEPF_COMPLEX is unset when in password input mode.
Kevin Puetz (2):
winecrt0: Remove free_delay_imports.
vbscript: Don't abort when trying to TRACE() functions with many arguments.
Limstash Wong (1):
taskmgr: Fix the unit in memory usage graph on performance tab.
Louis Lenders (1):
msvcr80: Update manifest resource.
Martin Storsjö (2):
include: Add declarations of _alloca and alloca for MSVC mode.
ntdll: Add SEH unwind info in ARM assembly functions/trampolines.
Mihail Ivanchev (1):
include: Add prototype for ReOpenFile().
Nikolay Sivov (2):
vbscript: Implement DateSerial().
vbscript: Implement DateAdd().
Paul Gofman (3):
msxml3: Use node_get_text() in domelem_get_nodeTypedValue() if no type is present.
crypt32: Support CRYPT_STRING_HEX in CryptStringToBinary().
winhttp/tests: Avoid race condition on closing connection in server_thread().
Piotr Caban (4):
msvcr120: Add missing _StructuredTaskCollection destructor spec file entry.
msvcrt: Fix _wputenv_s return value on error.
msvcrt: Fix _putenv_s return value on error.
msvcrt: Fix _wputenv_s invalid argument handling.
Robert Wilhelm (4):
scrrun: Added DateCreated property for IFile.
scrrun: Add test for correct string length returned from GetTempName.
scrrun: Correct string length returned from GetTempName.
scrrun: Avoid memory leak in error case.
Rémi Bernon (2):
winebus.sys: Implement SOCD neutral cleaning for hatswitches.
server: Avoid using pointer value after realloc.
Santino Mazza (3):
riched20/tests: When selection is out of view, the scrollbar should move.
riched20: Ensure that cursor is visible when selecting text.
jscript: Return ParseProcedureText when compile fails.
Sebastian Lackner (1):
ntdll: Improve stub of NtQueryEaFile.
Tim Clem (1):
kernelbase: Don't assume the length of the process image name.
Torge Matthies (8):
msvcr110: Add _StructuredTaskCollection::_StructuredTaskCollection_ctor stub.
msvcr120: Add _StructuredTaskCollection::_StructuredTaskCollection_dtor stub.
msvcr100: Add _StructuredTaskCollection::_Schedule stub.
msvcr110: Add _StructuredTaskCollection::_Schedule_loc stub.
msvcr100: Implement invalid_multiple_scheduling exception.
msvcr100: Factor out the mapping of a context to a scheduler.
msvcr100: Implement _StructuredTaskCollection::_Schedule and _Schedule_loc.
msvcp90: Fix segfault in bad_alloc exception default constructor.
Zebediah Figura (7):
quartz/systemclock: Use timeGetTime() to retrieve the current time.
wined3d: Correctly handle 3D textures in wined3d_view_{load, invalidate}_location().
ntdll: Add a fast path for NtDeviceIoControlFile(INVALID_HANDLE_VALUE).
xslt: Use win32config.h from the correct directory.
ntdll: Calculate the necessary length after calling snprintf() in SystemWineVersionInformation.
msvcrt: Add SEH annotations for sse2_memcpy().
libwine: Avoid comparing the result of pointer arithmetic to zero.
Zhiyi Zhang (14):
shell32: Correct SHOpenFolderAndSelectItems() prototype.
include: Add SHOpenFolderAndSelectItems() declaration and flags.
shell32/tests: Add SHOpenFolderAndSelectItems() tests.
shell32: Implement SHOpenFolderAndSelectItems().
comctl32/tests: Add GetWindowSubclass() tests.
comctl32: Check reference data pointer before using it.
comctl32/tests: Test that changing focus for edit controls doesn't repaint immediately.
comctl32/edit: Don't repaint immediately when getting focus.
winex11.drv: Handle X errors from glXCopyContext().
winex11.drv: Don't compare error event serial if it's zero.
winegstreamer: Always check the return value from mf_media_type_from_wg_format().
gdi32/tests: Add more tests for GetTextMetrics().
win32u: Choose a smaller ppem to avoid exceeding the requested font height.
win32u: Fix a memory leak.
The Wine development release 8.4 is now available.
What's new in this release:
- Initial step of the Wayland graphics driver.
- Cleanups in IME support.
- A number of test fixes.
- Various bug fixes.
The source is available at:
https://dl.winehq.org/wine/source/8.x/wine-8.4.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.4 (total 51):
- #7585 Thief: the dark project hangs on 'esc' keypress in game if X in 24bpp mode
- #47407 Hard Truck 2: King of The Road (GOG) movies aren't played
- #49266 Amazon Games installs but won't start (needs WindowsFormsApplicationBase startup code?)
- #51848 Multiple applications have very poor performance after 4261369e5d8 (Secondhand Lands, SPORE)
- #52912 t2embed:t2embed fails on Windows with the UTF-8 codepage
- #52948 gdi32:font - test_EnumFonts() fails on Arial Bold on Windows in Russian
- #53172 advapi32:registry - test_enum_value() has a pair of rare failures in UTF-8 system locales
- #53182 shell32:shelllink - A save(NULL, TRUE) fails randomly in test_load_save() on Wine
- #53236 d3d9:device - test_wndproc() sometimes gets an unexpected WM_DISPLAYCHANGE in Wine
- #53270 test_WSARecv() fails when using wow64 thunks [Wow64ApcRoutine() overwrites return value set by NtContinue()]
- #53488 The dxgi:dxgi output is too big on debiant
- #53526 kernel32:sync - test_timer_queue() occasionally fails to delete the timer on Windows 10
- #53528 ntdll:info - test_query_kerndebug() fails on Windows 8 to 10 1709
- #53818 foobar2000 v1.6 crashes shortly after startup on Wine 7.19 or higher
- #53974 d3drm:d3drm sometimes crashes after failing to create the IDirect3DRMDevice* interface in Wine
- #53975 d3drm:d3drm sometimes fails to create an immediate mode device in Wine
- #54003 vbscript:run sometimes fails on Windows UTF-8 locales
- #54008 d3d9:device sometimes fails to create a D3D object in Wine, crashes
- #54019 The 64-bit ntdll:wow64 fails on Windows 11
- #54020 The 32-bit ntdll:wow64 fails on Windows 11
- #54052 winhttp:notification times out randomly in Wine
- #54058 user32:input - test_ToAscii() fails in the Hindi UTF-8 locale
- #54078 ntdll:pipe - test_blocking() sometimes fails in Wine when the pipe is not signaled
- #54168 kernel32:console - test_wait() sometimes fails on Windows 8+
- #54298 d3d12:d3d12 - test_desktop_window() fails on Windows 10 1709
- #54299 d3d12:d3d12 - test_create_device() gets an unexpected 0 refcount on Windows 10 1909+
- #54313 HS_hevo_gc 8.8.1.1 fails to launch
- #54379 since wine 8.0 print doesn't work any more
- #54449 nethack crashes
- #54491 regedit/regproc.c - export_key() is unable to return TRUE
- #54495 Motorola Ready For Assistant does not start, needs ext-ms-win-networking-wlanapi-l1-1-0.dll
- #54504 dbghelp:dbghelp, ntdll:wow64 & psapi:psapi_main fail on Windows 11 due to notepad.exe path remapping
- #54505 psapi:psapi_main - The 64-bit test_EnumProcessModules() gets unexpected Notepad case on Windows 11
- #54506 psapi:psapi_main - The 64-bit test_EnumProcessModulesEx() gets pcs-6464 and pcs-6432 failures on Windows 11
- #54507 psapi:psapi_main - The 32-bit test_EnumProcessModulesEx() gets many pcs-3232 failures due to partial copy errors on Windows 11
- #54509 psapi:psapi_main - The 64-bit test_EnumProcessModules() gets unexpected third module on Windows 11
- #54531 jsproxy:jsproxy crashes on Windows 11
- #54539 Starcraft Remastered Game Initialization Failed
- #54553 mmdevapi:propstore - The 32-bit test_setvalue_on_wow64() fails on Windows 10 2004+
- #54563 The gif is displaying wrongly, with weird backgrounds of various colors
- #54593 gdi32:dc - The SetDeviceGammaRamp() tests fails on Windows 10 1909
- #54605 The 32-bit dbghelp:dbghelp cannot run on Windows <= 10 1607 due to IsWow64Process2() call
- #54617 KakaoTalk IM text edit window leaves artifacts when the text overflows and scroll bar appears
- #54621 Wine 8.3 64-bit is missing in the Debian bookworm repo
- #54637 riched20:txtsrv - test_TxGetNaturalSize fails if system GUI font's glyph widths are wider than expected by the test
- #54645 TextPad 9.1 installation fails in Wine 6 from Linux Mint repo
- #54649 windows.perception.stub:perception - Windows 10 1607 does not have ISpatialSurfaceObserverStatics2
- #54657 kernel32:loader - test_import_resolution() gets bad tls data on Windows 7
- #54663 ldp.exe crashes on unimplemented function wldap32.dll.ldap_set_dbg_flags
- #54669 imm32:imm32 - ime_install() fails in some locales on Windows
- #54690 ldp.exe crashes when attempting to connect to an invalid host
----------------------------------------------------------------
Changes since 8.3:
Alex Henrie (5):
wldap32: Add ldap_set_dbg_flags stub.
wldap32: Replace bvfreeU with plain free.
wldap32: Handle null LDAPMessage in ldap_count_entries.
wldap32: Handle null LDAPMessage in ldap_parse_result.
comctl32/treeview: Ignore the lParam to WM_PRINTCLIENT and add tests.
Alexandre Julliard (32):
ntdll/tests: Check the default stack information against the exe header.
ntdll/tests: Remove invalid instruction from KiUserExceptionDispatcher test.
ntdll/tests: Allow zero size return for NtQueryDirectoryObject on Wow64.
wow64: In system calls always return the status from Wow64SystemServiceEx.
wow64: Push a valid return address when calling KiRaiseUserExceptionDispatcher.
wow64: Keep track of APC stack frames, similarly to user callback frames.
wow64: Declare exported functions in winternl.h.
maintainers: Assume maintainership of ARM platforms.
ntdll: Always call Wow64PrepareForException when dispatching an exception.
server: Determine the native thread context flags on the client side.
ntdll: Pass the WoW context to the server on ARM64.
ntdll: Don't touch the top of the 32-bit thread stack.
wow64: Create the WOW64INFO structure.
wow64: Fixup Eip for breakpoint exceptions.
wow64: Don't update the exception address in raise_exception().
wow64: Implement Wow64RaiseException().
make_makefiles: Die when the git command fails.
gitlab: Add workaround for more strict git ownership check.
lcms2: Import upstream release 2.15.
faudio: Import upstream release 23.03.
ldap: Import upstream release 2.5.14.
tiff: Import upstream release 4.5.0.
ntdll: Fix some CPU information tests on ARM64.
ntdll: Implement the SystemProcessorBrandString query.
ntdll: Implement the SystemProcessorFeaturesInformation query.
wineboot: Use the SystemProcessorBrandString query instead of cpuid.
ntdll/tests: Handle another possible status when SystemProcessorFeaturesInformation is not supported.
ntdll/tests: Fix Wow64 tests failures on Windows 11 ARM64.
ntdll/tests: Update some todos that succeed with the new wow64 architecture.
ntdll: Implement NtWow64IsProcessorFeaturePresent().
wow64: Forward NtWow64IsProcessorFeaturePresent() to the CPU backend.
wineboot: Add processor features for supported WoW64 architectures on ARM64.
Alexandros Frantzis (6):
winewayland.drv: Add initial driver stub.
winewayland.drv: Add initial unixlib stub.
winewayland.drv: Perform basic per-process Wayland initialization.
win32u: Allow drivers to set the null user driver.
winewayland.drv: Report basic monitor information.
winewayland.drv: Report all advertised monitor modes to Wine.
Anton Baskanov (1):
ir50_32: Handle 24-bit output media type.
Brendan Shanks (4):
kernel32: Implement GetFirmwareType().
loader: In macOS preloader, move the top-down allocations area down.
loader: In macOS preloader, stop using mincore() to test if a region is empty.
kernelbase: Implement DiscardVirtualMemory().
Connor McAdams (17):
uiautomationcore: Implement IUIAutomation::Create{True,False}Condition.
uiautomationcore: Implement IUIAutomation::CreatePropertyCondition.
uiautomationcore: Implement IUIAutomation::CreateNotCondition.
uiautomationcore: Implement IUIAutomation::CreateOrCondition.
uiautomationcore: Implement IUIAutomation::get_ControlViewCondition.
uiautomationcore: Implement IUIAutomation::get_RawViewCondition.
uiautomationcore: Validate input arguments for IUIAutomationElement::GetCurrentPropertyValueEx.
uiautomationcore: Add support for element array properties in IUIAutomationElement::GetCurrentPropertyValueEx.
uiautomationcore: Implement IUIAutomation::CreateCacheRequest.
uiautomationcore/tests: Add tests for IUIAutomationElement caching methods.
uiautomationcore: Implement IUIAutomationElement::BuildUpdatedCache.
uiautomationcore: Add support for caching property values in UiaGetUpdatedCache.
uiautomationcore: Implement IUIAutomationCacheRequest::AddProperty.
uiautomationcore: Implement IUIAutomationElement::GetCachedPropertyValueEx.
uiautomationcore/tests: Add tests for IUIAutomationElement find methods.
uiautomationcore: Implement IUIAutomationElement::FindAll{BuildCache}.
uiautomationcore: Implement IUIAutomationElement::FindFirst{BuildCache}.
Daniel Tang (3):
wintypes: Stub RoIsApiContractMajorVersionPresent().
wofutil: Stub WofIsExternalFile().
windows.networking: Stub DllGetActivationFactory().
Davide Beatrici (12):
winealsa: Return STATUS_SUCCESS for unused unixlib functions.
winecoreaudio: Return STATUS_SUCCESS for unused unixlib functions.
wineoss: Return STATUS_SUCCESS for unused unixlib functions.
winepulse: Return STATUS_SUCCESS for unused unixlib functions.
mmdevapi: Query MemoryWineUnixFuncs virtual memory and store the resulting handle.
winepulse: Move process_attach and process_detach handling into mmdevapi.
mmdevapi: Use UTF-16 for client name in "test_connect_params" and "create_stream_params" structs.
mmdevapi: Move test_connect handling into mmdevapi.
winealsa: Use GetModuleFileName() instead of hardcoded module filename for registry key.
winecoreaudio: Use GetModuleFileName() instead of hardcoded module filename for registry key.
wineoss: Use GetModuleFileName() instead of hardcoded module filename for registry key.
winepulse: Use GetModuleFileName() instead of hardcoded module filename for registry key.
Derek Lesho (2):
mfplat/tests: Test bytestream closing behavior in IMFMediaSource::Shutdown.
winegstreamer/media_source: Close bytestream in ::Shutdown.
Dmitry Timoshkov (2):
win32u: Give full access rights to the process window station.
win32u: Give full access rights to the thread desktop.
Eric Pouech (10):
dbghelp/tests: Better use global variables.
dbghelp/tests: Preserve last error in process_get_kind().
dbghelp: Use 'wine' as loader on multi-arch configuration.
dbghelp/tests: Add tests for SymRefreshModuleList() on non-live target.
dbghelp: Don't set ELF loader when wine's loader isn't accessible.
dbghelp: Fix vdso.so lookup.
ntdll/tests: Use msinfo32.exe instead of notepad.exe.
ntdll/tests: Use msinfo32.exe instead of notepad.exe.
psapi/tests: Use msinfo32.exe instead of notepad.exe.
dbghelp/tests: Use msinfo32.exe instead of notepad.exe.
Evan Tang (4):
ntdll: Fix inverted TlsIndex check.
kernel32/tests: Add test verifying that tls init functions are called.
ntdll/tests: Move TlsIndex test to kernel32:loader.
kernel32/tests: Fix tls callback tests on Windows 7.
Fan WenJie (3):
opengl32: Fix missing conversion of glUnmapBuffer_params from 32bit to 64bit.
opengl32: Fix missing conversion of glUnmapNamedBuffer_params from 32bit to 64bit.
wow64: Fix missing conversion of ThreadWineNativeThreadName in wow64_NtSetInformationThread.
Florian Will (1):
comdlg32/tests: Fix itemdlg tests on Windows.
François Gouget (18):
advapi32/tests: Fix the RegEnumValueA() tests in UTF-8 locales.
msado15: Fix the spelling of a comment.
winscard: Fix the spelling of a function parameter.
riched20/tests: Fix a typo in a comment.
dbghelp/tests: Let the tests run on Windows 7, 8 and 10 <= 1607.
t2embed/tests: Fix the TTGetEmbeddingType() test in UTF-8 locales.
windows.perception.stub/tests: Skip some tests when ISpatialSurfaceObserverStatics2 is not supported.
vbscript/tests: Fix the testChrError() tests in the mixed locale case.
d3d8/tests: Remove an unused call to IDirect3D8_GetAdapterDisplayMode().
wofutil: Add a trailing linefeed to a FIXME().
dinput/tests: Skip the tests if acquiring the device fails.
advapi32/tests: Improve the resume handle service tests.
advapi32/tests: Better account for starting and stopping services.
advapi32/tests: Separate the EnumServicesStatus() and EnumServicesStatusEx() tests.
advapi32/tests: Better check the EnumServicesStatusExW() output.
advapi32/tests: Take into account service start / stop race conditions.
advapi32/tests: Enumerate the services using the Unicode API.
advapi32/tests: Skip some tests if the EventLog service crashed.
Gabriel Ivăncescu (10):
kernel32: Fix GetNumberFormatA when input length is 0.
kernel32: Fix GetCurrencyFormatA when input length is 0.
mshtml: Hold ref to HTMLDocumentObj when calling external code.
mshtml: Hold ref to inner window when calling external code.
mshtml: Hold ref to outer window when navigating.
mshtml: Check if browser was detached during notifications while navigating.
mshtml: Hold ref to the frame element during readyState notifications.
mshtml: Grab refs to windows upfront before sending pagehide events.
mshtml: Use already available window local variable in refresh task.
jscript: Fix jsstr leak after changing variant type to BSTR.
Georg Lehmann (5):
winevulkan: Deal with per api xml entries.
winevulkan: Only parse extensions for Vulkan.
winevulkan: Skip features that are not part of Vulkan.
winevulkan: Add basic support for extension dependencies.
winevulkan: Update to VK spec version 1.3.242.
Giovanni Mascellani (5):
d3d12/tests: Test that D3D12 swapchains can only be created on direct command queues.
dxgi: Immediately error out when creating a D3D12 swapchain on a non-immediate queue.
dxgi: Always assume that a D3D12 swapchain always uses user images.
dxgi/tests: Test that ResizeBuffers() resets the back buffer index to zero.
dxgi: Reset the back buffer index to zero on ResizeBuffers().
Hans Leidekker (1):
adsldp/tests: Skip all remaining tests when the server is down.
Henri Verbeet (11):
wined3d: Don't bother explicitly terminating the GLSL info log in print_glsl_info_log().
wined3d: Use wined3d_get_line() in shader_glsl_compile().
wined3d: Use wined3d_get_line() in shader_glsl_dump_program_source().
wined3d: Use wined3d_get_line() in shader_arb_compile().
wined3d: Use wined3d_get_line() in shader_spirv_compile_shader().
wined3d: Use wined3d_get_line() in shader_spirv_scan_shader().
d3d11: Get rid of the DXBC tag definitions.
wined3d: Sort the exports.
d3dcompiler: Handle some newer D3D_BLOB_PART values in debug_d3dcompiler_d3d_blob_part().
wined3d: Get rid of the wined3d_shader_byte_code_format enum.
wined3d: Use vkd3d-shader to disassemble shaders.
Hugh McMaster (2):
regedit: Allow export_key() to return TRUE.
regedit: Append '.reg' file extension if necessary.
Huw D. M. Davies (1):
winedump: Fix printf format warning.
Jacek Caban (1):
winedump: Print static lib EC symbols.
Jinoh Kang (4):
riched20/tests: Test for ITextDocument::Freeze and ITextDocument::Unfreeze.
riched20: Don't assume that TxDraw preserves the device context's brush selection.
riched20: Implement ITextDocument::Freeze and ITextDocument::Unfreeze.
riched20/tests: Don't specify DT_WORDBREAK in _check_txgetnaturalsize().
Martin Storsjö (1):
ntdll: Handle aarch64 pointer authentication in unwind info.
Max Figura (20):
wined3d: Move the WINED3D_RS_WRAP12 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP11 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP10 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP9 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP8 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP7 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP6 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP5 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP4 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP3 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP2 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP1 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP0 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_EXTENTS stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_COLORKEYBLENDENABLE stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_SOFTWAREVERTEXPROCESSING stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_PATCHEDGESTYLE stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_PATCHSEGMENTS stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_DEBUGMONITORTOKEN stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_INDEXEDVERTEXBLENDENABLE stub to wined3d_device_apply_stateblock.
Mohamad Al-Jaf (22):
include: Add windows.perception.spatial.idl file.
include: Add windows.graphics.directx.idl file.
include: Add windows.perception.spatial.surfaces.idl file.
windows.perception.stub: Add stub DLL.
windows.perception.stub: Add ISpatialSurfaceObserverStatics stub interface.
windows.perception.stub: Add ISpatialSurfaceObserverStatics2 stub interface.
windows.perception.stub/tests: Add ISpatialSurfaceObserverStatics2::IsSupported() tests.
windows.perception.stub: Implement ISpatialSurfaceObserverStatics2::IsSupported().
pdh: Implement PdhVbGetDoubleCounterValue().
pdh/tests: Add PdhVbGetDoubleCounterValue() tests.
include: Add windows.graphics.directx.direct3d11.idl file.
include: Add Windows.Foundation.Deferral definition.
include: Add windows.graphics.holographic.idl file.
include: Add IHolographicSpaceStatics2 interface definition.
windows.perception.stub: Add IHolographicSpaceStatics2 stub interface.
windows.perception.stub/tests: Add IHolographicSpaceStatics2 properties tests.
windows.perception.stub: Implement IHolographicSpaceStatics2::get_IsSupported().
windows.perception.stub: Implement IHolographicSpaceStatics2::get_IsAvailable().
include: Add IHolographicSpaceStatics3 interface definition.
windows.perception.stub: Add IHolographicSpaceStatics3 stub interface.
windows.perception.stub/tests: Add IHolographicSpaceStatics3::get_IsConfigured() tests.
windows.perception.stub: Implement IHolographicSpaceStatics3::get_IsConfigured().
Paul Gofman (1):
winex11.drv: Don't allow changing internal pixel format if conflicts with non-internal.
Piotr Caban (4):
gdiplus: Use transparency instead of background color if transparent color flag is set in GIF GCE.
gdi32: Improve EMR_CREATEDIBPATTERNBRUSHPT playback.
wineps: Fix buffer overflow in PSDRV_WriteDIBPatternDict function.
wineps: Fix image bits access in PSDRV_WriteDIBPatternDict.
Rémi Bernon (89):
win32u: Initialize IO_STATUS_BLOCK in load_directory_fonts.
win32u: Initialize IO_STATUS_BLOCK in rawinput add_device.
winex11: Initialize IO_STATUS_BLOCK in X11DRV_GetICMProfile.
maintainers: Assume maintainership of IME support.
imm32/tests: Add broken test results for w10v22H2.
makedep: Rename TESTDLL generated .res to avoid conflicts.
makedep: Support resource files for embedded TESTDLL.
imm32/tests: Test ImmInstallIMEW with an actual IME.
imm32/tests: Redirect IME function to the main module.
imm32/tests: Test ImmGetDescription with the installed IME.
imm32/tests: Test ImmGetIMEFileName with the installed IME.
user32/tests: Skip tests if layout failed to activate.
user32/tests: Add a WM_INPUTLANGCHANGE message test.
win32u: Move window query functions around.
win32u: Send WM_INPUTLANGCHANGE when activating new layout.
imm32: Implement stubs for ImmFreeLayout and ImmLoadIME.
imm32/tests: Test undocumented ImmLoadIME / ImmFreeLayout.
imm32: Rename ImmHkl to struct ime.
imm32: Reorder control flow in ImmConfigureIMEA.
imm32: Reorder control flow in ImmConfigureIMEW.
imm32: Reorder control flow in ImmEnumRegisterWordA.
imm32: Reorder control flow in ImmEnumRegisterWordW.
imm32: Reorder control flow in ImmEscapeA.
imm32: Reorder control flow in ImmEscapeW.
imm32: Reorder control flow in ImmGetConversionListA.
imm32: Reorder control flow in ImmGetConversionListW.
imm32: Reorder control flow in ImmGetProperty.
imm32: Reorder control flow in ImmGetRegisterWordStyleA.
imm32: Reorder control flow in ImmGetRegisterWordStyleW.
imm32: Reorder control flow in ImmRegisterWordA.
imm32: Reorder control flow in ImmRegisterWordW.
imm32: Reorder control flow in ImmUnregisterWordA.
imm32: Reorder control flow in ImmUnregisterWordW.
imm32: Reorder control flow in ImmGetImeMenuItemsA.
imm32: Reorder control flow in ImmGetImeMenuItemsW.
imm32: Avoid casts when calling into A/W IME.
imm32: Fail to load IME on any missing entry.
imm32: Return early if IMM_GetImmHkl fails.
imm32: Move IMM_FreeThreadData helper around.
imm32: Rename input context immKbd to ime.
imm32: Implement ImmLoadIME and ImmFreeLayout.
imm32: Rename some struct ime members.
imm32: Delete unnecessary uSelected struct ime member.
imm32: Use a single ime_is_unicode helper.
win32u: Keep the current user locale when enumerating layouts.
win32u: Keep the current user locale when loading layout.
win32u: Prevent user locale change in NtUserActivateKeyboardLayout.
winex11: Remove now unnecessary user locale change checks.
widl: Use explicit %empty token for empty rules.
widl: Add missing rule end semicolons.
widl: Use noyywrap lexer option.
widl: Use bison-bridge option.
widl: Remove unused temp_name member.
imm32: Rename szImeRegFmt to layouts_formatW.
imm32: Transform "Ime File" value in ImmInstallIMEW.
imm32: Rewrite ImmGetIMEFileName(A|W).
imm32: Rewrite ImmGetDescription(A|W).
imm32: Use CRT allocation functions.
widl: Use a struct list to keep imported files.
widl: Simplify handling of already parsed imports.
widl: Use a struct list for the import stack.
widl: Handle preprocess-only case separately.
widl: Introduce new (open|close)_input_file helpers.
widl: Respect -N flag for imported files preprocessing.
widl: Use open_input_file to open the main input.
imm32/tests: Use LANG_INVARIANT for the installed IME.
imm32/tests: Test ImmIsIME with the installed IME.
imm32/tests: Test ImmGetProperty with the installed IME.
imm32/tests: Test ImmEscape with the installed IME.
imm32/tests: Test ImmEnumRegisterWord with the installed IME.
imm32/tests: Test ImmRegisterWord with the installed IME.
imm32/tests: Test ImmGetRegisterWordStyle with the installed IME.
imm32/tests: Test ImmUnregisterWord with the installed IME.
imm32/tests: Test basic ImmEnumInputContext usage.
include: Add some dinput.h action semantics definitions.
dinput/tests: Test BuildActionMap / SaveActionMap with the HID joystick.
dinput/tests: Test SaveActionMap effect on DIPROP_USERNAME property.
dinput/tests: Test SaveActionMap effect on DIPROP_APPDATA property.
dinput/tests: Test SaveActionMap effect on DIPROP_BUFFERSIZE property.
dinput/tests: Test SaveActionMap effect on DIPROP_RANGE property.
dinput/tests: Test SaveActionMap effect on HID joystick input.
dinput/tests: Remove BuildActionMap / SaveActionMap mouse and keyboard tests.
dinput/tests: Increase timeouts for waits not supposed to fail.
widl: Group <INITIAL,ATTR> tokens together.
widl: Group <INITIAL> tokens together.
widl: Group <ATTR> tokens together.
widl: Introduce a new helper to produce num tokens.
widl: Simplify string literals lexing.
widl: Avoid freeing input_name in pop_import.
Stefan Dösinger (7):
dxgi/tests: Fix UnregisterClass call in test_resize_target_wndproc.
dxgi/tests: Run test_resize_target_wndproc on d3d12 too.
dxgi/tests: Run test_swapchain_window_messages on d3d12.
dxgi: Unlock the wined3d mutex after storing the new target.
dxgi: Catch nested SetFullscreenState invocations.
dxgi/tests: Test nested fullscreen application from different thread.
dxgi/tests: Test nested SetFullscreenState from the same thread.
Sven Baars (12):
kernelbase: Pass the root key to open_key().
kernelbase: Pass the key name to open_key().
kernelbase: Pass the root key to create_key().
kernelbase: Pass the key name to create_key().
kernelbase: Restructure the open_key() loop.
kernelbase: Always try to open the Wow6432Node in open_key().
kernelbase: Factor opening a subkey out of open_key().
kernelbase: Move create_key() below open_key().
kernelbase: Add a fast path to create_key().
kernelbase: Restructure the create_key() loop.
advapi32/tests: Test deleting 32-bit registry keys.
kernelbase: Also call NtOpenKeyEx() on empty key names.
Zebediah Figura (24):
ddraw: Move pitch validation to ddraw_surface_create_wined3d_texture().
ddraw: Separate a need_draw_texture() helper.
ddraw: Restructure ddraw_surface_create_wined3d_texture() to avoid gotos.
ddraw: Move the wined3d_texture_update_desc() call into ddraw_surface_create_wined3d_texture().
ddraw: Move wined3d_resource_desc translation to ddraw_surface_create_wined3d_texture().
win32u: Make NtUserSetWindowPixelFormat() into a proper export.
win32u: Introduce a win32u_get_window_pixel_format() helper.
winex11: Retrieve the pixel format from win32u for normal windows in wglGetPixelFormat().
wineandroid: Retrieve the pixel format from win32u for normal windows in wglGetPixelFormat().
winemac: Retrieve the pixel format from win32u for normal windows in wglGetPixelFormat().
wined3d: Do not set the pixel format if wglGetPixelFormat() returns zero and we already set the internal pixel format.
win32u: Allow separately storing the internal pixel format set by WGL_WINE_pixel_format_passthrough.
winex11: Separately store the internal pixel format set by WGL_WINE_pixel_format_passthrough.
winemac: Separately store the internal pixel format set by WGL_WINE_pixel_format_passthrough.
wineandroid: Separately store the internal pixel format set by WGL_WINE_pixel_format_passthrough.
dxgi: Call wined3d_swapchain_state_set_fullscreen in d3d12_swapchain_init.
ddraw: Rename "is_complex_root" to "is_root".
ddraw: Remove some outdated comments from ddraw_surface7_SetSurfaceDesc().
ddraw: Move sysmem_fallback setting to ddraw_surface_create_wined3d_texture().
ddraw: Factor out more common initialization into ddraw_surface_create_wined3d_texture().
ddraw: Move sub-resource surface initialization to ddraw_surface_create_wined3d_texture().
ddraw: Move the rest of the surface desc population to ddraw_surface_create() from device_parent_texture_sub_resource_created().
ddraw: Do not return a wined3d_texture from ddraw_surface_create_wined3d_texture().
ddraw: Rename ddraw_surface_create_wined3d_texture() to ddraw_texture_init().
Zhiyi Zhang (4):
gitlab: Make FVWM respect position hints.
user32/tests: Do not modify cursor position when simulating clicks.
light.msstyles: Add nonclient metrics.
user32/tests: Test winstation and desktop access rights.
The Wine development release 8.3 is now available.
What's new in this release:
- Support for the Low Fragmentation Heap.
- Smard card support using PCSC-Lite.
- Bundled Zydis library for more correct disassembly.
- Various bug fixes.
The source is available at:
https://dl.winehq.org/wine/source/8.x/wine-8.3.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.3 (total 29):
- #24256 3D Sexvilla 2: extremely long loading times
- #34011 Path of Exile stutters constantly
- #37146 Untis 2015 (.NET 4.0 app) crashes on startup with Wine-Mono
- #37495 Multiple PC/SC applications need winscard.SCardEstablishContext implementation (AusweisApp2 1.x german identity card app, SmartCard test apps, Seneka EBDYS client, Aruba Key)
- #39113 Multiple PC/SC applications need winscard.SCardListReaders implementation (Aruba key, SmartCard test apps)
- #43224 Freelist scan can result in O(n) time when allocating
- #45756 Button not clickable when dpi setting changed in Office 2007 Installer
- #49113 Wine heap performs badly when multiple threads are concurrently allocating or freeing memory
- #51259 6.0.1 Introduces error causing Wavelab to close when loading presets
- #52506 Setup of game "What's the Secret?" fails to create icon
- #53094 ntdll:rtlstr test crashes on win32 arch with hi-IN locale
- #53176 KeePassXC needs Windows.Security.Credentials.KeyCredentialManager (UWP)
- #53504 Sacred:unhandled exception in Wine 7.14
- #53728 Escape from Tarkov needs DisplayConfigGetDeviceInfo(DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME) implementation
- #54112 rouvy : fails to update with server, unimplemented function bthprops.cpl.BluetoothRegisterForAuthenticationEx
- #54149 shlwapi:ordinal - test_SHFormatDateTimeA() fails on the mixed locales configuration
- #54338 Swift crashes due to unimplemented api-ms-win-core-realtime-l1-1-1.dll.QueryUnbiasedInterruptTimePrecise function
- #54432 Missing ntdll.RtlAddressInSectionTable() implementation causes all GraalVM Native Image exes to crash on load
- #54475 Hardwar UIM6.0 crashes in 8.0, doesn't in 6.0.3
- #54534 dbghelp:dbghelp - The test_loaded_modules() enumeration fails on Windows 10 1607
- #54559 riched20:editor - test_EM_GETSELTEXT() fails in the Hindi locale on Windows
- #54562 The 64-bit oleaut32:usrmarshal crashes in Wine
- #54564 Rich Edit crashes when Ctrl+Right is pressed at past the final paragraph
- #54565 riched20:richole - subtest_InsertObject() fails in the Hindi locale on Windows
- #54570 Saints Row: The Third heavy rain causes heavy fps reductions
- #54581 SpeedCommander 20 installer crashes on unimplemented function SHELL32.dll.Shell_GetCachedImageIndexW
- #54582 kernel32:locale - test_NLSVersion() fails on Windows 10 22H2
- #54583 kernel32:locale - The non-breaking space GetNumberFormatEx() test fails on Windows 11
- #54584 kernel32:locale - The NtGetNlsSectionPtr() test fails on Windows 11
----------------------------------------------------------------
Changes since 8.2:
Adrian Thiele (2):
mfreadwrite/tests: Check refcount of device manager after release.
mfreadwrite/reader: Release device manager in source_reader_release.
Akihiro Sagawa (1):
msado15: Free recordset filter on close.
Alex Henrie (7):
include: Annotate CommandLineToArgvW with __WINE_DEALLOC.
shell32: Add support for Program Manager icons with arguments.
dsound: Use CRT functions for memory allocation.
winex11: Use RTL_CONSTANT_STRING instead of reimplementing it.
winex11: Avoid calling RtlInitUnicodeString on a static constant.
server: Annotate allocation functions with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
ntoskrnl: Add ExGetPreviousMode and test.
Alexandre Julliard (33):
conhost: Use standard va_list instead of __ms_va_list.
notepad: Use standard va_list instead of __ms_va_list.
oleview: Use standard va_list instead of __ms_va_list.
start: Use standard va_list instead of __ms_va_list.
taskmgr: Use standard va_list instead of __ms_va_list.
winefile: Use standard va_list instead of __ms_va_list.
include: Move __builtin_ms_va_list definitions to vadefs.h.
ntdll: Pass the NtCreateNamedPipeFile disposition to the server.
ntdll: Return the correct IOSB information when creating a named pipe.
kernelbase: Set ERROR_ALREADY_EXISTS for existing pipe in CreateNamedPipeW().
makedep: Don't add dependencies for tests of disabled dlls.
kernel32/tests: Add a missing dependency comment.
ntdll: Stop loading libwine.so.
libwine: Remove obsolete library.
ntdll: Build an initial WoW context on ARM64.
ntdll: Implement getting/setting the WoW context on ARM64.
ntdll: Mark the Wow64 TLS slots as reserved.
makedep: Remove support for building shared libraries.
winegcc: Stop using the deprecated prelink tool.
winebuild: Only allow the stdcall calling convention for system calls.
libs: Import the Zydis library version 4.0.0.
winedbg: Use the Zydis library for disassembly.
ntdll: Update the IOSB status in NtCreateNamedPipeFile().
ntdll: Skip dependency only for the actually loaded ntdll and kernel32, instead of matching by name.
ntdll: Also check for data execution on x86-64.
wow64: Call the 32-bit KiRaiseUserExceptionDispatcher for invalid handle exceptions.
makedep: Store the list of .ok files per-architecture.
ntdll: Implement RtlAddProcessTrustLabelAce().
server: Fix another buffer overflow compiler warning.
wine.inf: Remove redundant platform-specific sections.
wine.inf: Set Program Files variables separately for all WoW platforms.
wine.inf: Add keys for the platform-specific Wow64 backend.
wow64: Get the backend dll name from the registry.
Alexandros Frantzis (2):
gdi32: Track ticks since draw start per window_surface.
win32u: Reset draw_start_ticks for new window_surface.
Alistair Leslie-Hughes (4):
msado15: Semi-stub _Recordset get/put Filter.
msado15: Field ActualSize return a default size.
msado15: Support "Optimize" in Properties get_Item.
include: Add DBCOLUMNFLAGS_ enums values.
Connor McAdams (14):
uiautomationcore: Register all UI Automation typelibs.
uiautomationcore: Add stub IUIAutomation implementation.
uiautomationcore: Implement IUIAutomation::ElementFromHandle.
uiautomationcore: Implement IUIAutomationElement::GetCurrentPropertyValueEx.
uiautomationcore: Implement UiaLookupId for AutomationIdentifierType_ControlType GUIDs.
uiautomationcore: Implement IUIAutomationElement::get_CurrentControlType.
uiautomationcore: Implement IUIAutomationElement::get_CurrentName.
uiautomationcore: Implement IUIAutomationElement::get_CurrentBoundingRectangle.
uiautomationcore/tests: Fix UiaHUiaNodeFromVariant tests on Windows 11.
uiautomationcore/tests: Fix UiaNodeFromHandle tests on Windows 11.
uiautomationcore: Implement IUIAutomation::IntSafeArrayToNativeArray.
uiautomationcore: Implement IUIAutomation::IntNativeArrayToSafeArray.
uiautomationcore: Implement IUIAutomation reserved value retrieval methods.
uiautomationcore: Implement IUIAutomation::CheckNotSupported.
David Gow (1):
dxgi: Don't warn on DXGI_ALPHA_MODE_UNSPECIFIED with wined3d.
Eric Pouech (11):
dbghelp/tests: Test that overlapped module is really unloaded.
include: Ensure that SymRefreshModuleList() is properly defined.
kernel32/tests: Don't let debugger tests fail on a 64bit only config.
dbghelp/tests: Fix failure on Win10 1607.
kernel32/tests: Fix debugger.c:test_kill_on_exit().
dbghelp/tests: Add wrapper for EnumerateLoadedModulesW64().
dbghelp/tests: Adapt test_modules_overlap() for Windows 11.
dbghelp/tests: Introduce ends_withW helper.
dbghelp/tests: Only retrieve the system directories once.
dbghelp/tests: Introduce get_machine_bitness() helper.
dbghelp/tests: Fix tests for process count in wow64.
Etaash Mathamsetty (1):
ntoskrnl.exe/tests: Add Driver Object Extension Tests.
Florian Will (2):
gdiplus/tests: Test for GdipPrivateAddFontFile() sharing violation.
gdiplus: Use FILE_SHARE_READ in GdipPrivateAddFontFile().
François Gouget (20):
jsproxy/tests: InternetInitializeAutoProxyDll() is no longer supported on Windows 11.
jsproxy/tests: Add more tests for InternetGetProxyInfo()'s length parameter.
gdi32/tests: Mark a couple other D3DKMTCheckOcclusion() tests as flaky.
vbscript/tests: Fix the testChrError() tests.
winmm/tests: Ignore spurious WM_DWMCOLORIZATIONCOLORCHANGED messages.
mscoree/tests: Trace the error when a Windows API fails.
kernel32/tests: Fix the NLSVersion test on Windows 10 22H2.
kernel32/tests: Fix the NtGetNlsSectionPtr() test on Windows 11.
kernel32/tests: Fix the French GetNumberFormatEx() test on Windows 11.
gdi32/tests: Simplify setting up the non uniform gamma ramps.
gdi32/tests: Make the gamma ramp failures more unique.
gdi32/tests: Fix the SetDeviceGammaRamp() tests on Windows 10 1909.
mscoree/tests: Trace the GetExitCodeProcess() error before it gets lost.
ntdll/tests: Minimize the stack size for test_tp_multi_wait().
riched32/tests: EM_GETSELTEXT's wparam is not used and should be 0.
riched20/tests: EM_GETSELTEXT's wparam is not used and should be 0.
riched20/tests: Fix the EM_GETSELTEXT tests in Hindi on Windows.
mmdevapi/tests: WoW64 processes can read the properties from the registry.
shlwapi/tests: Fix the date formatting tests when the locale does not match the code page.
shlwapi/tests: Make sure to test the formatting of troublesome dates.
Gabriel Ivăncescu (8):
mshtml: Use proper types for readystate_locked and readystate_pending.
mshtml: Free the task after the destructor.
mshtml: Pass optional args to XMLHttpRequest.open() correctly.
mshtml: Register all event handlers when creating the XMLHttpRequest.
mshtml: Track readyState in XHRs and report it manually.
mshtml: Add separate task list for tasks dispatching events.
mshtml: Implement synchronous XMLHttpRequest.
mshtml: Send all readystatechange events for synchronous XHRs in IE9 and below.
Gijs Vermeulen (1):
shell32: Add Shell_GetCachedImageIndexA/W exports.
Hans Leidekker (19):
include: Add missing smart card defines.
winscard: Implement SCardEstablish/ReleaseContext() on top of libpcsclite.
winscard: Implement SCardIsValidContext().
winscard: Implement SCardGetStatusChangeA/W().
winscard: Implement SCardCancel().
winscard: Implement SCardListReadersA/W().
winscard: Implement SCardListReaderGroupsA/W().
winscard: Implement SCardConnectA/W().
winscard: Implement SCardStatusA/W().
winscard: Implement SCardRe/Disconnect().
winscard: Implement SCardBegin/EndTransaction().
winscard: Implement SCardTransmit().
winscard: Implement SCardControl().
winscard: Implement SCardGet/SetAttrib().
winscard: Implement SCardFreeMemory().
winscard: Use string conversion helpers in SCardAddReaderToGroupA().
winscard: Improve traces.
winscard: Add wow64 thunks.
winscard/tests: Initial tests.
Henry Goffin (1):
win32u: Invalidate all cached keys after input.
Huw D. M. Davies (2):
winemac: Fix return type of ProcessEvents().
maintainers: Add myself to the Audio I/O section.
Illia Polishchuk (2):
d3d9/tests: Add test for non-indexed instancing drawing.
d3d9: Always draw only a single instance for non-indexed draws.
Ivan Chikish (1):
gdi32/tests: Check last error on ' '.
Jinoh Kang (2):
riched20/tests: Test for word movement across paragraph boundary.
riched20: Don't set para unless committing cursor move in ME_MoveCursorWords.
Marcus Meissner (1):
user32/tests: Fix size passed to ToUnicode.
Max Figura (15):
wined3d: Move the WINED3D_RS_ROP2 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_PLANEMASK stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_LASTPIXEL stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_ZVISIBLE stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_SUBPIXEL stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_SUBPIXELX stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_STIPPLEDALPHA stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_STIPPLEENABLE stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_MIPMAPLODBIAS stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_ANISOTROPY stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_FLUSHBATCH stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_TRANSLUCENTSORTINDEPENDENT stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP15 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP14 stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAP13 stub to wined3d_device_apply_stateblock.
Mohamad Al-Jaf (15):
bthprops.cpl: Move implementations to bluetoothapis and import them.
include: Add BluetoothRegisterForAuthenticationEx prototype.
bluetoothapis: Add BluetoothRegisterForAuthenticationEx stub.
bluetoothapis: Add BluetoothUnregisterAuthentication stub.
include: Fix BluetoothRegisterForAuthentication prototype.
include: Add windows.security.credentials.idl file.
cryptowinrt/tests: Add ICryptographicBufferStatics interface test.
cryptowinrt: Add private.h file.
cryptowinrt: Stub IKeyCredentialManagerStatics interface.
cryptowinrt: Import IAsyncOperation from windows.gaming.input.
cryptowinrt: Implement IKeyCredentialManagerStatics::IsSupportedAsync().
cryptowinrt/tests: Add IKeyCredentialManagerStatics::IsSupportedAsync() tests.
widl: Use "i4" / "u4" for LONG parameterized type signature.
widl: Use "i2" / "u2" for INT16 parameterized type signature.
include: Add more Windows.Foundation.Numerics structs.
Paul Gofman (3):
server: Retry socket connection on ECONNABORTED error.
server: Set TCP SYN count on sockets.
win32u: Expose and use ProcessEvents from drivers instead of MsgWaitForMultipleObjectsEx.
Philip Gruebele (1):
dwrite: Pass correct font key when adding glyph to cache.
Piotr Caban (4):
winspool: Fix FILE: output handling in StartDocDlgW.
wineps: Remove no longer used output parameter handling from PSDRV_CreateDC.
localspl: Ignore an empty output string.
windowscodecs: Don't reorder gif extension blocks in GetReaderByIndex.
Rémi Bernon (23):
ntdll: Fix HeapWalk with empty uncommitted consecutive subheaps.
ntdll: Implement HeapCompatibilityInformation.
ntdll: Increase heap block tail_size capacity to 16 bits.
ntdll: Count allocations and automatically enable LFH.
ntdll: Split heap_resize_block into heap_resize_(block|large) helpers.
ntdll: Implement Low Fragmentation Heap frontend.
ntdll: Use atomics and lock-free list for bin groups.
ntdll: Add a heap thread affinity and per-affinity bin group cache.
ntdll: Avoid shrinking large heap block to small block.
msvcr80/tests: Test _dupenv_s outcome with missing env var.
msvcr80/tests: Test _wdupenv_s outcome with missing env var.
msvcrt: Fix _dupenv_s behavior with missing env var.
msvcrt: Fix _wdupenv_s behavior with missing env var.
include: Allow overriding LANGID in module VERSIONINFO.
oleaut32/tests: Test VARIANT_UserUnmarshal allocation sizes.
oleaut32: Allocate a full pointer when unmarshalling byref arrays.
winex11: Assume that Xkb extension is available.
widl: Use "g16" for GUID parameterized type signature.
user32/tests: Test VK_MENU effect on ToUnicode.
win32u: Map VK_MENU / KBDALT in kbdus_tables pCharModifiers.
win32u: Return the current display mode depth with nulldrv.
explorer: Use GUID_NULL display device GUID for nulldrv.
win32u: Check GUID_NULL display device if desktop atom is missing.
Serkan Önder (1):
po: Update Turkish translation.
Sven Baars (3):
bcrypt: Factor out wow64 padding conversion.
bcrypt: Add wow64 support for PSS padding.
bcrypt: Remove unused fields from struct key_asymmetric32.
Tingzhong Luo (2):
evr: Fix crash when clearing input type for the mixer.
winspool: Check dmSize in IsValidDevmodeW().
Torge Matthies (4):
kernelbase: Break out of inner for-loop early in find_substring.
kernelbase: Reuse the previous iteration's pos and sortkey state if possible in find_substring.
kernelbase: Fix WaitForThreadpoolIoCallbacks spec entry.
kernel32: Fix WaitForThreadpoolIoCallbacks spec entry.
Zebediah Figura (16):
user32: Map DEV_BROADCAST_DEVICEINTERFACE to ANSI for registered device notifications.
ntoskrnl/tests: Expand tests for device and interface naming.
ntoskrnl: Preserve the device instance ID case in IoRegisterDeviceInterface().
Revert "ntoskrnl.exe: Enforce path case in WM_DEVICECHANGE notifications.".
wined3d: Require fragment shader image stores and atomics to create a feature level 11.0 device.
wined3d: Require gather offset support to create a feature level 11.0 device.
wined3d: Require shader clip distance support to create a feature level 10.0 device.
wined3d: Require shader cull distance support to create a feature level 10.0 device.
wined3d: Disable 64-bit integer support.
ddraw/tests: Test that surface properties are retained across SetSurfaceDesc() calls.
ddraw/tests: Add more tests for mipmap surface creation flags.
ddraw: Forbid DDSCAPS_COMPLEX without any caps that merit a complex surface.
ddraw: Forbid DDSD_MIPMAPCOUNT without DDSCAPS_COMPLEX.
ddraw: Remove the redundant "desc" parameter to ddraw_surface_create_wined3d_texture().
d3d8/tests: Do not check for WM_MOVE in sc_maximize_messages.
d3d9/tests: Restore the focus window before sending SC_MAXIMIZE to it.
Zhiyi Zhang (4):
include: Add DirectComposition error codes.
include: Add dcomptypes.idl.
include: Add dcompanimation.idl.
include: Add dcomp.idl.
Ziqing Hui (4):
mf/tests: Add missing \n.
mf/tests: Correctly initialize DMO media type.
mf/tests: Test ProcessInput and ProcessOutput for WMV decoder DMO.
mf/tests: Test output data for WMV decoder DMO.
The Wine development release 8.2 is now available.
What's new in this release:
- Better debug information in Wow64 mode.
- Wow64 thunks in the WPCAP library.
- Indeo IV50 codec support.
- Monitor names set from EDID data.
- Various bug fixes.
The source is available at:
https://dl.winehq.org/wine/source/8.x/wine-8.2.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.2 (total 22):
- #48528 The Void crashes with builtin d3dx9_36 (needs D3DXFillCubeTextureTX() to return S_OK)
- #51345 Regression: Visual Studio 2005 "package load failure"
- #51545 STDOUT lost from a forked program on Cygwin/MSYS2
- #53747 SubLab VST3 plugin fails to register (needs Windows.System.Profile.SystemManufacturers.SmbiosInformation)
- #53926 New typelib marshaller depends on IID_IDispatch support from target interface
- #54103 opengl32:opengl - test_copy_context() crashes on w11pro64_nv
- #54150 d3dcompiler_43:hlsl_d3d11 & d3dcompiler_47:hlsl_d3d11 - test_trig() fails on w11pro64_nv
- #54234 vbscript fails to compile when colon follows Else in If...Else
- #54318 Rich Edit inserts newly composed text at wrong position when system IME composition ends while a selection is active
- #54371 loader won't launch from PATH unless named "wine"
- #54384 GOG Heroes of Might and Magic IV crashes on launch
- #54431 Switching active window (alt+tab or otherwise) away from Final Fantasy XI causes keyboard keys to remain pressed
- #54456 vbscript memory leak in For Each with SafeArray as group
- #54457 vbscript memory leaks in interp_redim_preserve
- #54458 vbscript memory leaks in Global_Split
- #54463 Wrong version value is returned from win32_operatingsystem on win10 (regression)
- #54465 dbghelp:dbghelp - The 64-bit test_modules() fails on Windows 7
- #54477 user32:msg - test_message_conversion()'s broadcast test fails on Windows 7 and 10
- #54486 getenv_s returns the wrong value
- #54489 VarAbs() does not handle BSTR arguments correctly
- #54490 vbscript fails to compile when statement follows ElseIf
- #54493 vbscript fails to compile concat when used without space and expression begins with H
----------------------------------------------------------------
Changes since 8.1:
Alex Henrie (23):
msi: Handle memory allocation failure in get_link_file (cppcheck).
setupapi: Fix memory leak on realloc failure in RetreiveFileSecurity.
combase: Avoid calling RtlInitUnicodeString on a static constant.
nsiproxy: Avoid calling RtlInitUnicodeString on a static constant.
winhlp32: Fix memory leak on realloc failure in HLPFILE_RtfAddBitmap (cppcheck).
ole32: Avoid calling RtlInitUnicodeString on a static constant.
httpapi: Avoid calling RtlInitUnicodeString on a static constant.
msi: Annotate memory allocation functions with __WINE_(DEALLOC|MALLOC).
http: Avoid calling RtlInitUnicodeString on a constant.
services: Avoid calling RtlInitUnicodeString on a static constant.
winebus: Avoid calling RtlInitUnicodeString on a static constant.
mountmgr: Avoid calling RtlInitUnicodeString on a static constant.
win32u: Avoid calling RtlInitUnicodeString on a static constant.
wineboot: Avoid calling RtlInitUnicodeString on a static constant.
ws2_32: Avoid calling RtlInitUnicodeString on a static constant.
ntdll: Use RTL_CONSTANT_STRING instead of reimplementing it.
ntdll: Avoid calling RtlInit(Ansi|Unicode)String on a static constant.
winspool: Remove unnecessary call to RtlInitUnicodeString from add_printer_driver.
krnl386: Avoid calling RtlInitUnicodeString on a static constant.
wow64: Avoid calling RtlInitUnicodeString on a static constant.
kernelbase: Avoid calling RtlInitUnicodeString on a static constant.
ntoskrnl: Avoid calling RtlInitUnicodeString on a static constant.
winspool: Initialize nt_ppd in add_printer_driver.
Alexandre Julliard (25):
winedump: Print more information from the PE Load Config directory.
winedump: Initial support for dumping PE dynamic relocations.
gitlab: Force updating configure.
wow64: Move some exception and context functions to syscall.c.
wow64: Preserve the CPURESERVED flags across user callbacks.
wow64: Call the CPU backend to get/set the current thread context.
wow64: Call the thread init entry point in the CPU backend.
ntdll: Use the standard unixlib macro for Unix calls.
ntdll: Store the unixlib handle at ntdll load time.
ntdll: Replace the __wine_dbg_write() syscall by a Unix call.
ntdll: Replace the __wine_unix_spawnvp() syscall by a Unix call.
ntdll: Replace the wine_server_call() syscall by a Unix call.
ntdll: Replace the wine_server_fd_to_handle() syscall by a Unix call.
ntdll: Replace the wine_server_handle_to_fd() syscall by a Unix call.
winedump: Dump the alternate version of some data directories for hybrid PE dlls.
winedump: Dump the metadata of hybrid PE dlls.
browseui: Use standard va_list instead of __ms_va_list.
comdlg32: Use standard va_list instead of __ms_va_list.
cryptui: Use standard va_list instead of __ms_va_list.
dxdiagn: Use standard va_list instead of __ms_va_list.
oledlg: Use standard va_list instead of __ms_va_list.
setupapi: Use standard va_list instead of __ms_va_list.
wineusb.sys: Use standard va_list instead of __ms_va_list.
ntdll: Consistently initialize x86-64 signal handlers.
ntdll: Avoid a misleading indentation warning.
Alistair Leslie-Hughes (5):
odbccp32: Append DLL path when loading driver.
include: Add missing SQL prototype.
msdasql: Use SQLDriverConnectW to connect to the ODBC driver.
msdasql: Always return affected rows if required.
msdasql: Use SQLColAttributesW to fetch statement attributes.
André Zwing (1):
maintainers: Remove myself as maintainer of wpcap.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Brendan Shanks (9):
kernelbase: Implement QueryInterruptTime.
kernelbase: Partially implement QueryInterruptTimePrecise.
loader: In macOS preloader, fix an environment variable sometimes being lost.
ntdll/tests: Test NtMapViewOfSection with a 64-bit DLL and zero_bits > 31.
ntdll: Respect zero_bits/limit when mapping a PE file.
include: Add __ASM_LOCAL_LABEL macro.
ntdll: Use __ASM_LOCAL_LABEL in syscall dispatchers.
server: On macOS, fake debug registers when running under Rosetta.
ntdll: Add a WARN when setting debug registers fails under Rosetta.
Connor McAdams (13):
include: Fully define uiautomationclient interfaces.
uiautomationcore: Implement UiaLookupId for AutomationIdentifierType_Event GUIDs.
include: Define UI Automation pattern provider interfaces.
uiautomationcore: Implement UiaLookupId for AutomationIdentifierType_Pattern GUIDs.
uiautomationcore: Add UiaRaiseStructureChangedEvent stub.
uiautomationcore: Add UiaRaiseAsyncContentLoadedEvent stub.
uiautomationcore: Add UiaRaiseTextEditTextChangedEvent stub.
uiautomationcore: Add UiaRaiseNotificationEvent stub.
uiautomationcore: Add UiaRaiseChangesEvent stub.
uiautomationcore: Add support for UIA_BoundingRectanglePropertyId.
uiautomationcore: Add support for UIA_ValueIsReadOnlyPropertyId.
uiautomationcore: Implement get_BoundingRectangle for MSAA providers.
uiautomationcore: Add support for UIA_NamePropertyId to MSAA providers.
Dmitry Timoshkov (2):
rpcrt4: Mark the buffer as invalid in NdrProxyFreeBuffer().
rpcrt4: Avoid casting an object to IUnknown.
Eric Pouech (40):
conhost: Only update font when running with a window.
dbghelp: Stop unwinding on potential 64bit frame for i386 cpu.
dbghelp: Add tests about modules loading.
dbghelp: Allow loading modules for different machines.
dbghelp: Filter on machine when searching for Wine system PE modules.
winedbg: Handle multi-machine process in command 'info share'.
winedbg: Don't expose module whose machine isn't the process' one to gdb.
dbghelp: Identify a 32bit multi-arch wow64 debuggee as a live target.
winedump: Introduce ability to pass several section names to -j option.
winedump: Refactor PDB DBI per-module dump in a dedicated function.
winedump: Make use of -j option in PDB dumping.
winedump: Dump some more MSF related information.
winedump: Load once and store global PDB string table.
winedump: Enhance dumping of string tables.
winedump: Dump some more bits out of public stream.
dbghelp: Fix failing test on Windows 7.
include: Add manifest constants for EnumProcessModulesEx.
psapi: Let modules test pass on non wow64 compatible platforms.
psapi: Add tests for EnumProcessModulesEx().
kernelbase: Implement EnumProcessModulesEx.
kernelbase: Let GetModuleBaseName succeed on 64bit modules in wow64.
kernelbase: Let GetModuleFileNameEx succeed on 64bit modules in wow64.
kernelbase: Let GetModuleInformation succeed on 64bit modules in wow64.
riched20/tests: Add tests when pasting in plain text mode.
riched20: Support SFF_SELECTION when streaming in plain text.
riched20/tests: Ensure clipboard has been pasted before testing the result.
riched20/tests: Add retry loop around OpenClipboard() to avoid access denial.
psapi/tests: Test directory of enumerated loaded modules.
dbgeng: Use EnumProcessModulesEx().
dbghelp: Use EnumProcessModulesEx().
psapi: Add more tests for EnumProcessModules().
kernelbase: Re-implement EnumProcessModules on top of EnumProcessModulesEx.
dbghelp/tests: Test return value of SymLoadModule.
dbghelp/tests: Add tests for 'module' name in EnumLoadedModules() callback.
dbghelp: Let EnumerateLoadedModules() expose image names.
dbghelp/tests: Add test for loaded modules enumeration.
dbghelp/tests: Add some more tests about module handling.
dbghelp: Add new module at end of the process' modules list.
dbghelp: Unload overlapping modules in SymLoadModule*().
ntdll: Implement RtlAddressInSectionTable.
François Gouget (22):
winetest: Don't use plain strings as format specifiers.
winetest: Avoid an infinite loop in vstrfmtmake() when the format is NULL.
d3dcompiler/tests: Allow more imprecision in test_trig() for NVIDIA.
crypt32/tests: Fix a typo in a comment.
dbghelp: Fix a typo in a comment.
kernel32/tests: Fix a typo in a comment.
spoolss/tests: Fix a typo in a comment.
uiautomationcore: Fix a typo in a FIXME() message.
winegstreamer: Fix a typo in a comment.
winevulkan: Fix a typo in a comment.
winex11.drv: Fix a typo in a comment.
winevulkan: Add a trailing linefeed to some FIXME() thunk messages.
dpnet/tests: Fix the unexpected async handle traces.
atl100/tests: Trace GetLastError() when DeleteFile() fails.
riched20/tests: Check clipboard content after destroying the editor window.
riched20/tests: Add context to the EM_FORMATRANGE tests.
winetest: Trace the keyboard layout.
user32/tests: Fix the ToAscii(A) test on Hindi + UTF-8.
user32/tests: Show ToAscii(A) returns 'a' for multiple keyboard layouts.
ntdll/tests: Test the thread pool stack APIs.
ntdll: Use the thread pool stack information.
ws2_32: Warn that a libnss plugin may be missing if getaddrinfo() returns EBUSY.
Gabriel Ivăncescu (1):
kernelbase: Fix grouping repeat for number formatting.
Giovanni Mascellani (1):
wbemprox: Do not call Release() inside wbemprox_cf_CreateInstance().
Hans Leidekker (14):
ntdll: Initialize PEB version numbers with Windows 10 values.
ntdll: Look at CurrentMajor/MinorVersionNumber registry values before CurrentVersion.
configure: Check for pcap_init() instead of pcap_create().
wpcap: Sync spec file with latest version of libpcap.
wpcap: Make Unix call parameters wow64 compatible.
wpcap: Fix an off-by-one error in convert_length_to_ipv6_mask().
wpcap: Implement pcap_bufsize().
wpcap: Implement pcap_dump_close().
wpcap: Implement pcap_init().
wpcap: Reimplement pcap_loop() on top of pcap_next_ex().
wpcap: Enable UTF-8 encoding in libpcap.
wpcap: Add wow64 thunks.
wpcap: Try to enable 32-bit mmap() support in libpcap.
wpcap/tests: Initial tests.
Huw D. M. Davies (1):
rpcrt4/tests: Remove a failing test.
Ivan Chikish (3):
winegstreamer: Add missing *out=NULL in unknown_inner_QueryInterface.
wmvcore: Add missing *out=NULL in WMReader_QueryInterface.
wmvcore/tests: Check out value for NULL in check_interface.
Jacek Caban (2):
wininet/tests: Add more InternetSetFilePointer tests.
oleaut32: Remove overflow check for VT_R4 and VT_R8 in VarAbs.
Jason Kuo (2):
wininet: Partially implement InternetSetFilePointer.
wininet/tests: Add InternetSetFilePointer tests.
Jason Millard (8):
vbscript: Fix memory leak in Split().
vbscript: Fix memory leak in Split().
vbscript: Add missing stubs for GetLocale and SetLocale builtins.
vbscript: Fix compile when colon follows Else on new line.
vbscript: Fix memory leak in owned safearray iterator.
oleaut32: Fix VarAbs function for BSTR with positive values.
vbscript: Fix compile when statement after ElseIf or after separator.
vbscript: Fix compile issue with non hex after concat without space.
Jinoh Kang (2):
ntdll/tests: Update test_RtlUniform to match Windows Vista or later.
ntdll: Fix integer overflow in RtlUniform.
Max Figura (5):
wined3d: Move the WINED3D_RS_ANTIALIAS stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_TEXTUREPERSPECTIVE stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAPU stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_WRAPV stub to wined3d_device_apply_stateblock.
wined3d: Move the WINED3D_RS_MONOENABLE stub to wined3d_device_apply_stateblock.
Michael Stefaniuc (3):
mshtml/tests: Actually test a return value.
d3d11/tests: Actually test the return of CreateRasterizerState().
ntdll/tests: Remove some Vista broken broken(<constant>) calls.
Mohamad Al-Jaf (9):
include: Add realtimeapiset.h file.
kernelbase: Partially implement QueryUnbiasedInterruptTimePrecise.
include: Add DirectX 12 Agility SDK definitions.
d3d12core: Add stub DLL.
include: Add windows.ui.viewmanagement.idl file.
windows.ui: Add stub DLL.
windows.ui: Add IUISettings3 stub interface.
windows.ui/tests: Add IUISettings3::GetColorValue() tests.
windows.ui: Implement IUISettings3::GetColorValue().
Nikolay Sivov (1):
apisetschema: Add ext-ms-win-networking-wlanapi-l1-1-0.
Paul Gofman (17):
winegstreamer: Implement _GetInputStatus() for h264 decoder transform.
winegstreamer: Implement _GetInputStatus() for aac decoder transform.
winegstreamer: Set MF_SA_D3D11_AWARE attribute for h264 transform.
mf/session: Avoid dropping samples delivered from transform in session_request_sample_from_node().
bcrypt/tests: Add more tests for AES initialization vectors.
bcrypt: Update init vector after encrypt or decrypt.
bcrypt: Only reset init vector if the new vector is non-NULL.
imm32: Disable cross thread access for ImmSetCompositionString().
win32u: Remove monitor name from gdi driver monitor info.
win32u: Use monitor ID from EDID when available.
win32u: Store EDID info in monitors cache.
win32u: Return edidManufactureId and edidProductCodeId from NtUserDisplayConfigGetDeviceInfo().
win32u: Get friendly monitor name from EDID in NtUserDisplayConfigGetDeviceInfo().
winegstreamer: Route MFAudioFormat_RAW_AAC to mf_media_type_to_wg_format_audio_mpeg4().
winegstreamer: Fix getting codec data for raw aac.
winegstreamer: Use default 0 for _AAC_PAYLOAD_TYPE if not set.
mf/tests: Add basic tests for raw aac decode.
Piotr Caban (4):
msvcrt: Don't crash on NULL argument in getenv.
msvcrt: Don't crash on NULL argument in _wgetenv.
msvcrt: Improve error handling in getenv_s.
msvcrt: Improve error handling in _wgetenv_s.
Rémi Bernon (27):
include: Add new kbd.h header with KBDTABLES definition.
win32u: Use KBDTABLES for default NtUserGetKeyNameText.
include: Add VSC_VK constants definitions to kbd.h.
win32u: Use KBDTABLES for NtUserMapVirtualKeyEx VSC / VK mapping.
include: Add VK_TO_WCHARS constants definitions to kbd.h.
win32u: Use KBDTABLES for NtUserMapVirtualKeyEx MAP_VK_TO_CHAR.
win32u: Use KBDTABLES for NtUserVkKeyScanEx.
win32u: Use KBDTABLES for NtUserToUnicodeEx.
joy.cpl: Process messages while waiting for the input threads.
joy.cpl: Refresh the DInput button display on device change.
joy.cpl: Improve the DInput button display with many buttons.
joy.cpl: Use the DIJOYSTATE2 user data format to support more buttons.
winebuild: Use .incbin instead of printf for resource data.
dinput: Split dinput_unacquire_window_devices helper.
dinput: Name input thread message and wparam values.
dinput: Use a WH_CBT hook instead of WH_CALLWNDPROC.
dinput: Introduce keyboard_handle_key_event helper.
dinput: Avoid entering the hook CS in input_thread_ll_hook_proc.
dinput: Merge mouse and rawmouse acquired lists.
dinput: Merge all acquired device lists together.
dinput: Use rawinput interface for keyboard device.
include: Move ddk/imm.h to immdev.h.
include: Fix ImeInquire declaration.
include: Fix ImeToAsciiEx declaration.
include: Add Imm(Get|Set)HotKey declarations.
dinput: Forbid acquiring for other process windows.
dinput: Hook window threads instead of the entire prefix.
Shaun Ren (10):
ir50_32: Add stub dll.
ir50_32: Implement IV50_GetInfo.
ir50_32: Implement IV50_DecompressQuery.
ir50_32: Implement IV50_DecompressGetFormat.
winegstreamer: Add video_decoder stub.
ir50_32: Implement open and close.
winegstreamer: Add WG_MAJOR_TYPE_VIDEO_INDEO video type.
winegstreamer: Implement basic functionality for video_decoder.
ir50_32: Implement decompression.
wine.inf: Enable ir50_32 video codec.
Zebediah Figura (28):
wined3d: Make depth bounds test a proper state and handle it in wined3d_device_apply_stateblock().
setupapi/tests: Add tests for FLG_ADDREG_APPEND.
setupapi: Fail installation when trying to append to a registry value of the wrong type.
setupapi: Create the registry value if it doesn't exist in append_multi_sz_value().
wine.inf: Always use FLG_ADDREG_APPEND for SvcHost entries.
scardsvr: Add stub service.
oleaut32: Manually construct a stub buffer for dispinterfaces.
ws2_32: Forbid passing zero buffers to WSARecv().
mfreadwrite/tests: Avoid depending on sample size in test_source_reader().
mfreadwrite/tests: Test an audio/video file.
winegstreamer: Check the absolute value of the height in mf_media_type_from_wg_format_video().
winegstreamer: Separate a mf_video_format_to_wg() helper.
user32/tests: Add a register_class() helper.
user32/tests: Use ok() instead of assert().
user32/tests: Avoid leaking a window in test_message_conversion().
user32/tests: Test WM_DEVICECHANGE Unicode conversion.
user32/tests: Remove BroadcastSystemMessage() test for WM_DEVICECHANGE.
user32: Pass BSMINFO in BroadcastSystemMessageExA().
ddraw/tests: Remove unnecessary skips and conditionals from test_pixel_format().
d3d9/tests: Test that presenting does not set the pixel format on a window without one.
d3d8/tests: Test that presenting does not set the pixel format on a window without one.
ddraw/tests: Test that presenting does not set the pixel format on a window without one.
wined3d: Introduce wined3d_texture_get_swapchain().
dxgi: Implement IDXGIResource::GetUsage().
d3d11: Expand tests for IDXGIResource.
wined3d: Destroy objects belonging to wined3d_context_vk.completed_command_buffer_id.
wined3d: Destroy objects belonging to wined3d_device_gl.completed_fence_id.
mfsrcsnk: Add missing DllGetClassObject() export.
Ziqing Hui (6):
mfplat: Fix stride calculation for RGB24.
mfplat: Support YVYU, NV11, MEDIASUBTYPE_RGB* media types.
winegstreamer: Implement GetOutputType for WMV decoder.
winegstreamer: Implement SetOutputType for WMV decoder.
mf/tests: Test GetOutputSizeInfo for WMV decoder.
winegstreamer: Implement GetOutputSizeInfo for WMV decoder.
The Wine development release 8.1 is now available.
What's new in this release:
- Windows version set to Windows 10 for new prefixes.
- Many code cleanups that were deferred during code freeze.
- Various bug fixes.
The source is available at:
https://dl.winehq.org/wine/source/8.x/wine-8.1.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.1 (total 27):
- #43235 Dungeons & Dragons Online crashes on FreeBSD
- #44650 Multiple Blizzard games need dxgi and d3d11 dlls mapped without hole between two LOAD segments (Diablo III v2. 6. 1. 49286+, World of Warcraft, Overwatch)
- #47508 FL Studio: Pressing backspace while editing the name of something closes edit name window prematurely
- #49202 Never exited critical section in freetype.c
- #49443 Anno 1800: Super slow & bad performance
- #49615 Device read errors logged in dmesg when running wine commands with empty CD/DVD drive, since 5.5
- #51040 msi:package fails on Windows 10 if privileges not high enough
- #51313 gdi32:driver sometimes fails with a STATUS_GRAPHICS_PRESENT_OCCLUDED error
- #51784 The dinput8:hid output is too big in Wine
- #52354 winemac.drv not functional on non metal GPUs
- #52462 Wine don't recognize Ipega PG-9025 LT, RT and right analog stick is miss-mapped to RT and LT
- #52878 Free PC Audit 5.1.211.96 fails to show info in 'Brief' tab (needs GetBinaryValue method of the StdRegProv class)
- #52936 winhttp:url assumes 0xfb00 cannot be converted to the ANSI codepage, fails with UTF-8 codepage
- #53142 ieframe:webbrowser - test_ClientSite() has a rare failure on Windows 10 1809+
- #53274 adsldp:ldap - test_ParseDisplayName() sometimes fails to connect to the server
- #53386 cmd.exe: FOR /F USEBACKQ doesn't handle UTF-16 output of commands.
- #53594 GOG Galaxy crashes in GetExtendedTcpTable()
- #53666 Logitech X-56 Stick crashes the joystick subsystem if connected
- #54030 Snagit needs Win32_Volume class ( 'select deviceid from win32_volume where driveletter =C:')
- #54215 ListView doesn't refresh when changing between List and Details styles.
- #54289 RtlCopyContext buffer overflow
- #54328 nsi:nsi - test_tcp_tables() sometimes crashes in Wine
- #54337 AviUtl shows Japanese text as garbage after conversion in ExEdit edit box
- #54353 crypt32:cert - testVerifyRevocation() gets unexpected success in Wine on second run
- #54357 Spurious fixme message when calling ScrollWindow()
- #54364 RtlGenRandom fails on systems with more than 128 cores
- #54376 ws2_32:sock - test_reuseaddr() overflows a sockaddr variable by reading an AF_INET6 peer name into it
----------------------------------------------------------------
Changes since 8.0:
Ake Rehnman (1):
dbghelp: Store path to module image when passed through file handle.
Akihiro Sagawa (2):
user32/tests: Add DBCS WM_CHAR tests for edit control.
user32/edit: Fix WM_CHAR handler for double-byte characters.
Alex Henrie (23):
include: Add RTL_CONSTANT_STRING.
dwrite: Handle memory allocation failure in bidi_compute_bracket_pairs (cppcheck).
winex11: Simplify confusing condition and error messages in wglShareLists.
winspool: Improve the grammar of a comment in get_servername_from_name.
msi: Fix memory leak on realloc failure in create_diff_row_query (cppcheck).
msi: Fix memory leak on realloc failure in msi_get_window_text (cppcheck).
msi: Fix memory leak on realloc failure in search_directory (cppcheck).
mshtml: Handle memory allocation failure in set_statustext.
twain_32: Handle realloc failure in twain_add_onedriver (cppcheck).
dbghelp: Handle memory allocation failure in image_locate_build_id_target (cppcheck).
hhctrl: Handle memory allocation failure in ReadChmSystem (cppcheck).
hhctrl: Handle memory allocation failure in SearchCHM_File (cppcheck).
inetcomm: Fix memory leak on realloc failure in copy_headers_to_buf (cppcheck).
msvcrt: Change return type of _ctime32_s and _ctime64_s to errno_t.
include: Add ctime_s.
include: Add localtime_s.
shell32: Handle memory allocation failure in Dde_OnRequest (cppcheck).
shell32: Handle memory allocation failure in parse_dde_command (cppcheck).
include: Remove __WINE_MALLOC from functions that shouldn't have it.
appwiz: Fix memory leak on realloc failure in install_from_registered_dir (cppcheck).
winex11: Fix memory leak on realloc failure in import_xdnd_selection (cppcheck).
server: Fix buffer overrun in map_view handler.
urlmon: Use the _recalloc function instead of reimplementing it.
Alexandre Julliard (20):
krnl386: Make MapLS argument non-const to avoid some compiler warnings.
krnl386: Remove a trace that causes compiler warnings.
shell32: Allocate a full SHITEMID to avoid a compiler warning.
tools: Add a common helper to get the argv0 directory.
tools: Add a common helper to cleanup temp files.
tools: Move signal masking to the common make_temp_file() helper.
tools: Add a common helper to setup signal handlers.
shell32: Allocate the right size for an ITEMIDLIST.
scrobj: Initialize a variable to silence a compiler warning.
ntdll: Initialize a variable to silence a compiler warning.
ntdll: Prefer the ntdll path over argv[0] on platforms without reliable exe information.
user32: Copy directly to the buffer in unpack_message().
shlwapi/tests: Don't write uninitialized data.
gdiplus: Initialize a variable to avoid a spurious compiler warning.
ole32/tests: Raise an exception instead of accessing a bad pointer directly.
makedep: Don't output rules for disabled modules.
tools: Make sure that config.h is included.
include: Add some C99 floating point comparison macros.
wow64cpu: Move base address to leave more room for wow64.dll.
kernelbase: Report correct errors in GetModuleHandleExA().
Alistair Leslie-Hughes (5):
mountmgr.sys: Don't attempt to read from invalid media.
include: Add _XHR enum values.
include: Add D3DKMT_ENUMADAPTERS2 structure.
secur32: QueryContextAttributesW check for valid object before use.
secur32: Trace fContextReq consistently.
Bernhard Kölbl (12):
windows.media.speech: Move constraints vector to the recognition session.
windows.media.speech: Do not force calling convention on internal callbacks.
windows.media.speech: Return IAsyncAction from session_StopAsync.
windows.media.speech: Return IAsyncAction from session_PauseAsync.
windows.media.speech/tests: Test the recognizer state.
windows.media.speech/tests: Test starting, stopping, pausing and resuming the recognition session.
windows.media.speech: Add a worker thread to the recognition session.
windows.media.speech/tests: Check if stopping the session resets the paused state.
windows.media.speech: Allow the recognition session worker to be paused.
windows.media.speech: Add an audio capturing system.
windows.media.speech: Partially implement the speech recognizer state.
windows.media.speech: Store recorded audio in a temporary ringbuffer.
Brendan Shanks (7):
include/msvcrt: Add __WINE_(DEALLOC|MALLOC) attributes to _strdup and _wcsdup.
include/msvcrt: Add __WINE_(ALLOC_SIZE|DEALLOC|MALLOC) attributes to _aligned_malloc functions.
include/msvcrt: Add __WINE_(ALLOC_SIZE|DEALLOC) attributes to _recalloc.
taskmgr: Use exit code 1 when terminating processes.
taskkill: Use exit code 1 when terminating processes.
ntdll: Add stub for NtQueryInformationProcess(ProcessCycleTime).
kernelbase: Implement and add tests for QueryProcessCycleTime.
Eric Pouech (20):
dbghelp: Don't search path when we have a file handle to loaded image.
winedbg: Pass loaded image's file handle to dbghelp.
dbghelp: Expose the real path to the module in SymGetModuleInfo*().
dbghelp: In dwarf debug info, use the same name of anonymous UDT as pdb.
dbghelp: Don't use dbghelp_current_cpu.
winedbg: Use debuggee's bitness for 'examine /a' command.
conhost.exe: Handle ctrl-pause/break key strokes.
conhost.exe: Handle ctrl-\ in Wine.
winedbg: Track loaded modules.
winedbg: Fix read access to variables with thread local storage.
include: Be consistent in naming regarding MSF's block.
include: Update some fields in PDB headers.
include: Consistenly use _size to name the size of a sub-block.
include: Use stream to denote MSF stream/file.
winedump: Introduce a helper to print PE section's characteristics.
winedump: Correctly dump PDB_STREAM_INDEX.segment.
winedump: Explain a bit more errors on hash header.
winedump: Dump correctly ranges part of DBI stream.
winedump: Properly dump segment map information from PDB/DBI stream.
winedump: Be stricter about sizes while walking module's list.
Evan Tang (6):
mshtml: Implement IHTMLRect2 for HTMLRect.
ntdll: TlsIndex should not actually contain tls indices.
secur32: Schannel AcceptSecurityContext support.
secur32: Share code for schannel Acquire and AcceptCredentialsHandle.
secur32: Fix schannel AcquireCredentialsHandle algorithm mismatch error return.
secur32: Add test for schannel AcceptSecurityContext.
Fabian Maurer (7):
user32/tests: Don't assign const variable to other const (gcc 4.7).
wldap32: Free resource in error case and return error code (Coverity).
wldap32: Set error code in error cases (Coverity).
d2d1_1: Don't redefine D2D1_PROPERTY_BINDING (gcc 4.3).
d3dx10core: Don't redefine ID3D10Device1 (gcc 4.3).
winedump: Prevent "format overflow" warning.
dwrite/tests: Prevent "misleading indentation" warnings.
François Gouget (5):
user32: GetClipboardData() should set last error when the format is not found.
user32/tests: Use wine_dbgstr_an() to trace malformed Unicode strings.
user32: Fix a SetClipboardData() underflow and improve the tests.
user32: Fix a SetClipboardData() buffer overflow.
d3d12/tests: Don't check the refcount after releasing the dxgi adapter.
Gabriel Ivăncescu (20):
mshtml: Don't release the frame returned by get_frame_by_name.
mshtml: Don't hold ref to the created window in the FrameBase.
mshtml: Release the image factory's dispex.
mshtml: Don't initialize HTMLElement dispex for Option constructor.
mshtml/tests: Fix EventObj leak in onclick test.
mshtml/tests: Fix window leaks in dom tests.
mshtml: Implement location props when there's no URI.
mshtml: Defer populating the IActiveScript field until it's fully initialized.
mshtml: Set SCRIPTPROP_ABBREVIATE_GLOBALNAME_RESOLUTION properly.
jscript: Implement SID_GetCaller for QueryService.
vbscript: Add a ServiceProvider stub.
vbscript: Implement SID_GetCaller for QueryService.
include/mshtml: Add the other IHTMLEventObj* interfaces.
mshtml: Use Scrollbar_Auto as default for vertical scrollbars.
jscript: Pass the correct ServiceProvider when invoking external prop.
mshtml: Return undefined from window.XMLHttpRequest for uninitialized documents.
mshtml: Traverse and unlink builtin func disps.
mshtml: Simplify dynamic props unlinking.
mshtml: Tie window.location to the outer window.
mshtml: Embed the HTMLLocation into the outer window.
Georg Lehmann (1):
winevulkan: Update to VK spec version 1.3.240.
Gerald Pfeifer (2):
localspl: Avoid uninitialized variable in fill_builtin_form_info.
tools: Include limits.h for PATH_MAX.
Hans Leidekker (22):
advapi32: Bump random buffer size.
dplayx/tests: Skip tests when the dll is missing.
wbemprox: Implement Win32_Volume.
wbemprox: Implement GetBinaryValue() method.
wbemprox: Remove reg_ prefix from static functions.
winhttp/tests: Fix test failures with the UTF-8 code page.
adsldp/tests: Avoid test failures when the server is down.
ntdll/tests: Mark more Windows 11 test failures as broken.
ntdll/tests: Fix path test failures on Windows 11.
ntdll/tests: Fix some Wow64 test failures on Windows 11.
gdi32/tests: Mark another D3DKMTCheckOcclusion() test as flaky.
ws2_32/tests: Fix some test failures on Windows 11.
ws2_32/tests: Skip adapters that aren't up and running in test_bind().
ntdll: Add Windows 11 version.
ntdll: Default to Windows 10.
winecfg: Fix CurrentVersion registry string for Windows 10 and up.
msi/tests: Avoid test failures when running with insufficient rights.
msi: Install and patch global assemblies in InstallFinalize.
msi: Perform late initialization of the assembly caches.
msi: Remove msi_ prefix from static functions.
msi: Get rid of unnecessary typedefs.
wbemprox: Recognize Windows 11.
Huw D. M. Davies (1):
winebuild: Reorder the includes to avoid a build error on macOS.
Jacek Caban (2):
win32u: Silence spurious FIXME in NtUserScrollWindowEx.
ieframe/tests: Relax session count test.
James McDonnell (1):
kernel32: Use MoveFileWithProgress() to partially implement MoveFileTransacted(),
Jinoh Kang (9):
ntoskrnl.exe/tests: Use loopback address in test_wsk_listen_socket.
riched20: Obtain the composition start index after deleting selection.
ntdll: Check for delayed free block in heap_validate_ptr.
ntdll: Validate subheap's owner heap when validating heap.
ntdll: Validate blocks in the heap pending free request list.
ntdll: Remove redundant WARN_ON(heap) check.
ws2_32/test: Fix sockaddr buffer overflow in test_reuseaddr.
include: Add noreturn attribute to RtlRaiseStatus.
include/msvcrt: Add noreturn attribute to _assert.
Joshua Ashton (1):
winevulkan: Enable VK_EXT_hdr_metadata.
K.B.Dharun Krishna (1):
po: Update Tamil translation.
Kacper Michajłow (1):
include: Add some DXGI_COLOR_SPACE_TYPE enumeration values.
Mohamad Al-Jaf (5):
include: Add windows.system.profile.systemmanufacturers.idl file.
windows.system.profile.systemmanufacturers: Add stub DLL.
windows.system.profile.systemmanufacturers: Stub ISmbiosInformationStatics interface.
windows.system.profile.systemmanufacturers/tests: Add ISmbiosInformationStatics_get_SerialNumber tests.
windows.system.profile.systemmanufacturers: Implement ISmbiosInformationStatics_get_SerialNumber.
Nikolay Sivov (11):
include: Add recent DirectWrite API changes.
windows.globalization: Implement ILanguage::get_LanguageTag().
comctl32/header: Do not touch 'hwnd' field in HDM_LAYOUT.
ktmw32: Use syscall interface for transaction objects stubs.
propsys: Add InitPropVariantFromStringVector().
d3dx9/preshader: Set input table size for texture shaders.
d3dx9: Create parameter evaluator for texture shaders.
d3dx9: Partially implement D3DXFillTextureTX().
d3dx9/tests: Add a helper to compare filled cube textures.
d3dx9: Fix ARGB texture fills with negative component values.
d3dx9: Partially implement D3DXFillCubeTextureTX().
Paul Gofman (14):
ntdll/tests: Fix the case of absent XSTATE context in test_copy_context().
ntdll/tests: Fix xstate tests failing on modern Windows and CPUs with more xstate features.
ntdll/tests: Fix random test failure in test_restore_context().
ntdll: Factor out context_copy_ranges() function.
ntdll: Do not use extended context in RtlCopyContext() if extended state is not copied.
ddraw: Do not report D3DDEVCAPS_HWRASTERIZATION for RGB emulation device.
ntdll: Use MemAvailable field for free RAM estimation if available.
cryptnet: Cache revocation status in verify_cert_revocation().
cryptnet: Use cert data hash as cache id instead of serial number.
cryptnet: Also hash issuer cert for cache id.
msmpeg2vdec: Add stub dll.
msauddecmft: Add stub dll.
ntdll: Add stub for NtQueryInformationProcess( ProcessHandleTable ).
ws2_32: Provide same address order from gethostbyname() on consequent calls.
Robert Wilhelm (2):
vbscript: Return type mismatch for UBound(Empty) and UBound(NULL).
vbscript: Return type mismatch for LBound(Empty) and LBound(NULL).
Rémi Bernon (57):
sechost: Use heap_strdup_multi_AtoW for dependencies in CreateServiceA.
services: Use a separate allocation for NotifyParamsArray[0].params.
dwrite: Statically init the system_fallback locale list.
schedsvc: Avoid mismatching heap in SchRpcEnumFolders.
schedsvc: Avoid mismatching heap in SchRpcEnumTasks.
schedsvc: Avoid mismatching heap in RPC allocations.
schedsvc: Use CRT allocation functions in remaining calls.
dinput: Avoid sending envelope report if it has been removed.
windows.gaming.input: Fix infinite effect duration scaling.
windows.gaming.input: Introduce new effect_reorient_direction helper.
windows.gaming.input: Fix magnitude sign for constant and ramp effects.
hidp: Allow match all usages on specific functions only.
oledb32: Fix error info cleanup dispparams rgvarg index.
oledb32/tests: Avoid use-after-free and unused assignment.
dinput: Remove outdated and superfluous comments.
dinput: Add traces to the ANSI wrappers.
dinput: Remove unnecessary initialization helpers.
dinput: Move dinput class implementation to dinput.c.
dinput: Rename lpdid local variable to device.
include: Add Windows.Foundation.Collections.IVectorChangedEventArgs definition.
include: Add Windows.Foundation.Collections.IMapChangedEventArgs<T> definition.
include: Add Windows.Foundation.Collections.MapChangedEventHandler<K, V> definition.
include: Add Windows.Foundation.Collections.IMap<K, V> definition.
include: Add Windows.Foundation.Collections.IObservableMap<K, V> definition.
include: Add Windows.Foundation.Collections.IPropertySet definition.
include: Add Windows.Foundation.Collections.IObservableVector<T> definition.
include: Add Windows.Foundation.IAsyncActionWithProgress<TProgress> definition.
include: Add Windows.Foundation.IAsyncOperationWithProgress<TResult, TProgress> definition.
dinput: Use an internal refcount on all dinput devices.
dinput: Introduce a new struct to keep input thread state.
dinput: Introduce new input_thread_update_device_list helper.
dinput: Keep an internal refcount for dinput devices references.
dinput: Keep a reference on acquired devices while waiting.
dinput: Update the input thread device list when notified only.
dinput: Update the device status while holding its CS.
dinput: Cleanup low-level hooks on input thread exit.
dinput: Introduce new dinput_unacquire_window_devices helper.
dinput: Unacquire all devices on internal thread error.
dinput: Keep track of input thread users using public refcounts.
gitlab: Run dinput 64-bit tests in a dedicated job.
dinput/tests: Dynamically allocate async operation handlers.
dinput: Move window hook checks to input_thread_update_device_list.
dinput: Move rawinput registration to input_thread_update_device_list.
dinput: Move di_em_win_wndproc function around.
dinput: Use SendMessageW to notify and stop input thread.
dinput: Avoid entering hook CS for rawinput messages.
include: Declare some NtUser pointer related syscalls.
win32u: Move NtUserEnableMouseInPointer from user32.
win32u: Stub NtUserIsMouseInPointerEnabled syscall.
win32u: Stub NtUserGetPointerInfoList syscall.
win32u/tests: Test NtUserEnableMouseInPointer syscall.
win32u/tests: Test NtUserIsMouseInPointerEnabled syscall.
win32u/tests: Test NtUserGetPointerInfoList syscall signature.
comctl32/tests: Test unicode nature of window subclasses.
comctl32: Save unicode window nature on SetWindowSubclass call.
comctl32: Always use unicode messages for subclass procedures.
comctl32: Skip restoring window proc if it has been modified.
Santino Mazza (3):
mshtml/tests: Test for get_all and get_body in document fragments.
mshtml: Use This->node for HTMLDocument_get_all.
mshtml: Implement HTMLDocument_get_body for document fragments.
Shaun Ren (3):
winegstreamer: Parse all tag events in query_tags.
winegstreamer: Map MF_SD_LANGUAGE to ISO 639-1 for QuickTime media.
mfplay/tests: Add tests for MF_SD_LANGUAGE.
Zebediah Figura (31):
d3d11/tests: Add a basic test for vertex formats.
d3d10core/tests: Add a basic test for vertex formats.
wined3d: Separate a parse_channel_desc() helper.
wined3d: Use a string channel desc to initialize typed formats.
rpcrt4: Use a CONTAINING_RECORD helper to retrieve CStdStubBuffer from IRpcStubBuffer.
rpcrt4: Use a CONTAINING_RECORD helper to retrieve CInterfaceStubHeader from CStdStubBuffer.
rpcrt4: Rename "ref_counted_vtbl" to "struct delegating_vtbl".
rpcrt4: Use a flexible array member in struct delegating_vtbl.
rpcrt4: Use CONTAINING_RECORD in release_delegating_vtbl().
win32u: Make call_messageAtoW() static.
win32u: Make the global "caret" structure static.
win32u: Make create_brush() hidden.
win32u: Make draw_frame_caption() static.
win32u: Make draw_scroll_bar() static.
win32u: Make DrawTextW() hidden.
win32u: Make get_winproc_ptr() static.
win32u: Make ImmProcessKey() hidden.
win32u: Make ImmTranslateMessage() hidden.
win32u: Make is_child() hidden.
ntdll: Make fd_set_file_info() static.
ntdll: Make call_user_mode_callback() hidden.
ntdll: Make user_mode_callback_return() hidden.
ntdll: Make __wine_syscall_dispatcher_prolog_end() hidden on x86_64.
ntdll: Make __wine_unix_call_dispatcher_prolog_end() hidden on x86_64.
win32u: Make send_message_timeout() hidden.
win32u: Make set_visible_region() hidden.
winex11: Make client_foreign_window_proc hidden.
winex11: Include x11drv.h in xrandr.c even if compiling without xrandr.
winepulse: Include mult.c in pulse.c.
include: Fix the definition of DIFXAPILOGCALLBACK_* functions.
include: Add more definitions to difxapi.h.
Zhiyi Zhang (4):
comctl32/tests: Add WM_STYLECHANGED tests for changing listview view styles.
comctl32/listview: Repaint when changing view styles.
include: Add uiviewsettingsinterop.idl.
opengl32/tests: Make context current before calling wglCopyContext().
The Wine team is proud to announce that the stable release Wine 8.0
is now available.
This release represents a year of development effort and over 8,600
individual changes. It contains a large number of improvements that
are listed in the release notes below. The main achievement is the
completion of the conversion to PE format.
The source is available at:
https://dl.winehq.org/wine/source/8.0/wine-8.0.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.
----------------------------------------------------------------
What's new in Wine 8.0
======================
*** PE modules
- After 4 years of work, the PE conversion is finally complete: all modules can
be built in PE format. This is an important milestone on the road to supporting
various features such as copy protection, 32-bit applications on 64-bit hosts,
Windows debuggers, x86 applications on ARM, etc.
However, some modules still perform direct calls between the PE and the Unix
part, instead of going through the NT system call interface. The remaining
direct calls will be removed during the Wine 8.x development phase.
- A special syscall dispatcher is used for PE -> Unix transitions, to avoid the
overhead of a full NT system call. This minimizes the performance impact of the
new architecture, in particular for the OpenGL and Vulkan libraries.
- Building mixed Windows/Unix libraries in ELF format (.dll.so libraries) is
still supported for use in Winelib applications. However, such applications
won't support features enabled by the NT syscall interface, such as WoW64
without 32-bit libraries.
*** WoW64
- WoW64 thunks are implemented for essentially all Unix libraries, enabling a
32-bit PE module to call a 64-bit Unix library. Once the remaining direct
PE/Unix calls have been removed, this will make it fully possible to run
32-bit Windows applications without any 32-bit Unix library.
- When the 32-bit Wine loader isn't found, 32-bit applications are started in
the new experimental "Windows-like" WoW64 mode (where 32-bit code runs inside
a 64-bit host process). This mode can be enabled by building with the
'--enable-archs' configure option. This is still under development and not yet
recommended for general use. Since in case of configuration errors it is
possible for it to be triggered inadvertently, applications started in this
mode print the warning "starting in experimental wow64 mode".
*** Graphics
- The "Light" theme is enabled in the default configuration, for a more modern
look. Other themes can still be configured through WineCfg.
- The graphics drivers (winex11.drv, winemac.drv, wineandroid.drv) are converted
to run on the Unix side of the syscall boundary, and interface with the Unix
side of the Win32u library.
- The Print Processor architecture is implemented. This will be used to avoid
direct PE<->Unix calls in the printer driver.
- Effects are supported in Direct2D, including description parsing and a number
of core objects.
- Command lists recording and playback are implemented in Direct2D.
- The Vulkan driver supports up to version 1.3.237 of the Vulkan spec.
*** Direct3D
- Many optimizations related to streaming map acceleration are implemented, in
common code as well as in the GL renderer. Depending on the application, this
may result in major performance improvements.
- Adapter video memory budget change notifications are implemented.
- The Vulkan renderer supports setting multiple viewports and scissor rectangles.
- Several Direct3D 10 and 11 features, which were already implemented, are
accurately reported through capability flags:
- Per-format support for vertex and index buffers.
- Per-format support for all capabilities via D3D11_FEATURE_FORMAT_SUPPORT.
- No-overwrite maps on shader resources and constant buffers.
- Partial range binding of constant buffers.
- For convenience, a new WINE_D3D_CONFIG environment variable may be used instead
of modifying the HKEY_CURRENT_USER\Software\Wine\Direct3D registry key. The
value is a comma- or semicolon-separated list of key-value pairs, e.g.:
WINE_D3D_CONFIG="renderer=vulkan;VideoPciVendorID=0xc0de"
If an individual setting is specified in both the environment variable and the
registry, the former takes precedence.
- The Direct3D graphics card database recognizes more graphics cards.
- The Vulkan renderer limits the maximum Direct3D feature level based on
available Vulkan features.
*** Direct3D helper libraries
- A new HLSL compiler is implemented using the vkd3d-shader library.
- A new HLSL disassembler is implemented using the vkd3d-shader library.
- The HLSL preprocessor is reimplemented using the vkd3d-shader HLSL
preprocessor.
- The D3DX 10 Thread Pump is implemented.
- Many more expressions are supported in Direct3D 10 effects.
- Cubemap projection is implemented in the D3DX 9 helper library.
*** Audio / Video
- The MPEG-1 audio decoder filter for layers 1 and 2, and the separate filter for
layer 3, are both implemented on top of GStreamer.
- The ASF reader filter is implemented.
- The OpenAL32.dll wrapper library is removed, in favor of the native
OpenAL32.dll library shipped by Windows applications.
*** Media Foundation
- Content type resolution is improved in the Media Foundation Player.
- Rate control is implemented.
- The Enhanced Video Renderer default mixer and presenter are better supported.
- The DirectShow filter is implemented in the Enhanced Video Renderer.
- An initial framework is implemented for the Writer encoding API.
- The topology loader is better supported.
*** Input devices
- Controller hotplug support is greatly improved, and controller removal and
insertion are correctly dispatched to applications.
- Driving wheel device detection and reporting is better implemented, using the
SDL library and HID usages as hints for the device types.
- Force feedback effect support is improved, specifically with driving wheel
controllers.
- The HID Haptics specification is used for left / right motor rumble and trigger
rumble. It makes it possible for device drivers to expose haptics support over
HidRaw, and overcome EvDev limitations.
- The Joystick Control Panel is redesigned, with new graphics and a dedicated
view for XInput gamepads.
- Sony DualShock and DualSense controllers are supported when the hidraw backend
is used, and exposed to applications in the same way as they are on Windows.
- The Windows.Gaming.Input module is introduced, one of the first WinRT modules
in Wine, implementing a new programming interface to access gamepads, joysticks
and driving wheel devices. For this new input API, hotplug notifications are
also implemented, as well as force feedback effects and haptics. This API is
the first one to support trigger rumble.
*** Internationalization
- A proper locale database, in Windows locale.nls format, is generated from the
Unicode CLDR database. The list of supported locales is essentially identical
to that of the latest Windows version.
- Unicode string comparison is based on the Windows Sortkey database and
algorithms instead of the Unicode Collation Algorithm, yielding more compatible
results.
- Characters from high Unicode planes (in UTF-16 encoding) are supported in most
functions, in particular for case mappings, BiDi formatting, and character
shaping.
- The UTF-8 encoding is supported as Ansi codepage. It is enabled when requested
by the application's manifest.
- Unicode character tables are based on version 15.0.0 of the Unicode Standard.
- The timezone data is generated from the IANA timezone database version 2022g.
*** Text and fonts
- Font linking is enabled for most system fonts, which should fix missing glyphs
in CJK locales.
- Font fallback in DirectWrite is reworked, with additional support for an large
number of scripts.
*** Kernel
- The ApiSetSchema database is implemented, replacing all the api-ms-* forwarding
modules. This reduces both disk space and address space usage.
- DOS file attributes are persistent, and stored on disk using the filesystem's
extended attributes, in a format compatible with Samba.
*** Internet and networking
- The Online Certificate Status Protocol (OCSP) is implemented.
- More EcmaScript features are supported in JScript standard-compliant mode.
- The JScript garbage collector is implemented.
- Accessibility support is enabled in Wine Gecko package.
- Web Storage, Performance object and more event objects are implemented in
MSHTML.
*** Mono / .NET
- The Mono engine is updated to version 7.4.0. The list of changes can be viewed
at https://github.com/madewokherd/wine-mono/releases/tag/wine-mono-7.4.0
*** Builtin applications
- All the builtin applications use Common Controls version 6, which enables
theming and high-DPI rendering by default.
- The Wine Debugger (winedbg) prints thread names in the 'info thread' listing,
for applications that set the names of their threads. All internal Wine threads
also set their own name.
- The QWORD type is supported in the REGEDIT and REG registry tools.
- Notepad has a status bar displaying the current cursor position. The Goto Line
functionality is also implemented.
- The builtin console programs print data in the OEM codepage, for better
compatibility with applications reading their output.
- The Service Control tool (sc.exe) supports the 'query' command.
*** Development tools
- The PE conversion has made it necessary to implement a new mechanism to run
static C++ constructors in Winelib ELF applications. Unfortunately, this
requires the corresponding modules to be rebuilt with Wine 8.0. The rebuilt
modules will still run correctly on older Wine versions, but older modules will
no longer execute static constructors when run on Wine 8.0.
- In regression tests, individual checks can be marked as "flaky". This is useful
for checks that depend on external factors such as network timings. The errors
are still reported but not counted as failures.
- Test failure messages can be printed in color by setting the WINETEST_COLOR
environment variable, to make them easier to spot in the test log.
- The Resource Compiler (WRC) and Message Compiler (WMC) use the locale.nls
database to detect languages and codepages, and thus support all the Windows
locales.
- The WineDump tool supports printing the contents of Enhanced Metafile spool
files, as well as more contents from PDB files.
*** Build infrastructure
- PE binaries can be built for multiple architectures from the same build tree,
using the '--enable-archs' option to configure, for example
'--enable-archs=i386,x86_64'. This can be used to enable the experimental
WoW64 mode, where 32-bit applications can run without any 32-bit host
libraries. Note that this mode is still under development and not yet
recommended for general use.
- Data types that are defined as 'long' on Windows are defined as 'long' instead
of 'int' on all platforms with a 32-bit long type. This is more compatible, but
it can cause printf format warnings with Unix compilers. In Winelib code, it
can be disabled by defining WINE_NO_LONG_TYPES.
- Import libraries can be generated without using dlltool, by passing the
'--without-dlltool' option to winebuild. This is used to avoid dlltool bugs
with delay import libraries.
- Libraries that contain only resources and no code can be built with the
'--data-only' option to winegcc, which makes them smaller and more efficient to
load.
*** Bundled libraries
- Faudio is updated to the upstream release 22.11.
- LCMS2 is updated to the upstream release 2.14.
- LibJPEG is updated to the upstream release 9e.
- LibMPG123 is updated to the upstream release 1.31.1.
- LibPng is updated to the upstream release 1.6.39.
- LibTiff is updated to the upstream release 4.4.0.
- LibXml2 is updated to the upstream release 2.10.3.
- LibXslt is updated to the upstream release 1.1.37.
- Zlib is updated to the upstream release 1.2.13.
*** Platform-specific features
- The experimental WoW64 architecture is supported on macOS versions from 10.15.
- 64-bit time_t is supported on 32-bit Linux with recent Glibc versions.
- Exception unwinding on ARM platforms is extended with EHABI support on ARM32
and Dwarf support on ARM64.
*** Miscellaneous
- RSA encryption and the RSA-PSS signing algorithm are implemented.
- An initial version of the UI Automation API is implemented.
- Function name demangling supports various C++11 features.
*** External dependencies
- The vkd3d and LDAP libraries are bundled in the source tree and built as
PE. The corresponding Unix libraries are no longer needed.
- The OpenAL library is no longer used.
The Wine development release 8.0-rc5 is now available. This is
expected to be the last release candidate before the final 8.0.
What's new in this release:
- Bug fixes only, we are in code freeze.
The source is available at:
https://dl.winehq.org/wine/source/8.0/wine-8.0-rc5.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.0-rc5 (total 9):
- #26822 Double click the icon in the title bar should close the window
- #32643 getsockopt() does not indicate WSAEFAULT when setting optlen too small
- #45542 WeGame hangs after login.
- #50351 Slow text rendering in dofus linked to fnIMLangFontLink2_GetCharCodePages calling WideCharToMultiByte with CP_UNICODE
- #51227 urlmon:url breaks the wininet:http test on Windows 10 1709+ (7 failures)
- #51906 Multiple games fail to play videos (War Mongrels, The Medium, Sherlock Holmes Chapter One)
- #53408 Dark Souls: Remastered has slow performance with OpenGL renderer
- #53761 Broken rendering in Mafia III: Definitive Edition
- #54283 dinput:force_feedback - test_windows_gaming_input() sometimes crashes on Windows
----------------------------------------------------------------
Changes since 8.0-rc4:
Alexandre Julliard (1):
tools: Always fall back to argv[0] to find the tools directory.
Brendan Shanks (1):
kernel32/tests: Test GetFileType() with additional types of handles.
Byeong-Sik Jeon (1):
po: Update Korean translation.
Eric Pouech (3):
kernel32/tests: Extend share right for debugger's black box tests.
kernel32/tests: Merge two debug event loops in test_debugger().
kernel32/tests: Filter spurious thread creation debug events.
Fan WenJie (1):
winebuild: Only set thumb_mode on ARM targets.
François Gouget (4):
d3d12/tests: Allow a broken Windows 10 1709 hresult.
nsi: Return an error if NsiAllocateAndGetTable() fails to allocate the tables.
nsi: Add some margin to the tables size in NsiAllocateAndGetTable().
win32u: Document the font_lock handling in font_EnumFonts().
Gabriel Ivăncescu (1):
notepad: Fix uninitialized upper 64-bits of `pos` in DoFind.
Jactry Zeng (1):
po: Update Simplified Chinese translation.
Lauri Kenttä (1):
po: Update Finnish translation.
Robert Wilhelm (1):
vbscript/tests: Fix chr() tests with double-byte character sets.
Santino Mazza (2):
iphlpapi/tests: Test for Ipv4Enabled and Ipv6Enabled flags.
iphlpapi: Set Ipv4Enabled and Ipv6Enabled flags accordingly.
Tim Clem (2):
user32/tests: Test GetRawInputBuffer header fields more thoroughly.
win32u: Correct GetRawInputBuffer alignment under WoW64.
The Wine development release 8.0-rc4 is now available.
What's new in this release:
- Bug fixes only, we are in code freeze.
The source is available at:
https://dl.winehq.org/wine/source/8.0/wine-8.0-rc4.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.0-rc4 (total 25):
- #48553 Catia (CAD software) refuse to run installation on newest wine (<=4.18)
- #51268 Assembler messages: Error: no such instruction: `xsavec (%esp)'
- #51301 Any action that locks the cursor into place inside the Roblox Client window causes the cursor to freeze
- #51420 Running any program in Wine causes 100% cpu usage in Xorg
- #52089 d2d1:d2d1 fails in test_draw_geometry() on Wine
- #52152 comctl32:edit gets unexpected heights in test_text_position_style() on Windows 10 1809+
- #52429 Guild Wars: login not possible
- #52557 GetNetworkParams loops forever on musl
- #52749 winetricks dotnet35sp1: printfilterpipelinesvc.exe crashes in background
- #52932 comctl32:edit & user32:edit have test_char_from_pos() failures on Windows with the UTF-8 codepage
- #52994 mstask:task_trigger - test_GetNextRunTime() fails in Wine on date change
- #53382 Slow rendering when connected to external monitor
- #53536 ntdll:rtl - The 32-bit RtlUlonglongByteSwap() breaks test_RtlDecompressBuffer() on Windows
- #53583 FindNLSStringEx reimplementation doesn't match native
- #53671 No objects are being rendered in any DX10/11 apps with older GPU drivers
- #53837 HS_hevo_gc 8.6.1.2 fails to install
- #54045 ntdll:rtl - test_RtlIpv6StringToAddress() fails on Windows 11
- #54151 xactengine3_7:xact3 crashes when no speaker is connected
- #54172 ddraw:ddraw1, ddraw:ddraw2, ddraw:ddraw4, ddraw:ddraw7 - test_window_position() gets the size of the wrong screen in Wine
- #54180 Petz 4 has corrupt .pet files at startup
- #54210 Wine fails to compile with Linux 4.11 headers (use of undefined AT_HWCAP2)
- #54218 RTLD_SELF use breaks musl build since 8.0-rc1
- #54263 Build of 7.22 fails with mingw-w64 10.0
- #54264 Hyperdimension Neptunia Re;Birth1 crashes on exit in xactengine notification callback
- #54287 wineconsole: alternate screen buffer does not work
----------------------------------------------------------------
Changes since 8.0-rc3:
Alexandre Julliard (6):
Update copyright info for 2023.
gitlab: Add a daily win10 test run.
kernelbase: Fix FindNLSStringEx for strings with no primary weights.
wow64: Initialize win32u syscall table when it is mapped.
winecrt0: Check for RTLD_SELF support to enable ELF constructors.
tools: Create a temporary directory to store temp files.
Alistair Leslie-Hughes (1):
faudio: Purge and clear notifications on ShutDown.
Conor McCarthy (1):
d3d11: Apply the 'KEEP' options when sending RTVs and UAVs to wined3d.
Eric Pouech (7):
user32/tests: Retry when opening the clipboard.
user32/tests: Fix failing WM_PASTE tests for edit control on Win10+.
comctl32/tests: Retry when opening the clipboard.
comctl32/tests: Fix failing WM_PASTE tests for edit control on Win10+.
conhost: Reset console attribute upon exit in unix mode.
conhost: Initialize color_map when creating an alternate screen buffer.
po: Update French translations.
Gabriel Ivăncescu (2):
win32u: Initialize the tracking_info for NtUserDrawScrollBar params.
winex11.drv: Obtain icon info for icons passed to fetch_icon_data().
Gerald Pfeifer (1):
wrc: Avoid undefined behavior in the FreeBSD case.
Hans Leidekker (7):
iphlpapi: Handle errors from DnsQueryConfig(DnsConfigDnsServerList).
wininet/tests: Pass INTERNET_FLAG_RELOAD in secure connection tests.
shell32/tests: Fix a test failure on Windows 11.
ws2_32/tests: Fix test failures on Windows 11.
ntdll: Conform to Windows 11 behavior in RtlIpv6StringToAddress().
ntdll: Fix a test failure on Windows 11.
ntdll/tests: Mark some test results on Windows 11 as broken.
Hugh McMaster (1):
conhost: Migrate from FontPitchFamily to FontFamily.
Jacek Caban (2):
include: Add vadefs.h header.
include: Add stdarg.h header.
Julian Rüger (1):
po: Update German translation.
Paul Gofman (3):
dwmapi: Fill qpcVBlank in DwmGetCompositionTimingInfo().
cryptnet: Check cached revocation status in verify_cert_revocation().
cryptnet: Also cache revocation status when using OCSP.
Rémi Bernon (10):
ole32: Use CRT allocation for MIDL_user_(allocate/free).
ole32: Allocate IEnumSTATDATA data with the process heap.
ole32: Reset IMoniker data pointer to NULL on failure.
ole32: Allocate and free moniker lists with CRT allocations.
dinput/tests: Remove the async cancel tests.
rpcrt4/tests: Avoid invalid free of static string.
msv1_0: Avoid double free when SpAcceptLsaModeContext fails.
msv1_0: Avoid double free when SpInitLsaModeContext fails.
wininet: Allocate returned options strings with the process heap.
comctl32: Avoid mismatching heap in ProgressWindowProc.
Stefan Dösinger (1):
wined3d: Clamp the bound buffer range to the buffer size.
Zebediah Figura (4):
ntdll: Check for AT_HWCAP2 definition before using it.
ntdll: Manually write byte code for the xsavec instruction.
wined3d: Map the destination BO with WINED3D_MAP_DISCARD when replacing the entire destination in wined3d_context_gl_copy_bo_address().
wined3d: Write into a mapped BO when replacing the entire destination in wined3d_context_gl_copy_bo_address().
Zhiyi Zhang (2):
win32u: Introduce a get_display_depth() helper to retrieve emulated display depth.
ddraw/tests: Do not create a fullscreen test window in test_window_position_cb().
The Wine development release 8.0-rc3 is now available.
What's new in this release:
- Bug fixes only, we are in code freeze.
The source is available at:
https://dl.winehq.org/wine/source/8.0/wine-8.0-rc3.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.0-rc3 (total 28):
- #35126 AirBuccaneers hangs on exit
- #41339 Minor regression: Wine loads with "/wine/dlls/ntdll/loader.c: loader_section" errors when creating a new prefix or running an application
- #47438 Bloodstained: Ritual of the Night freeze at whitescreen
- #47536 Can't aim in Overwatch after alt-tabbing
- #47828 regedit: Random crashes on selecting an entry (thread-related?)
- #48322 World of Warcraft Classic: Mouse movement can block keydown events from registering
- #49164 Call of Cthulhu: Dark Corners of the Earth crashes after start
- #50519 Adobe Digital Editions 4.5 crash on Wine 6.0
- #52563 d3d11:d3d11 fails in test_dynamic_map_synchronization() on cw-rx460 in Wine
- #52903 Resizing Dn-FamiTracker fails to redraw pattern editor and status bar
- #53101 Public Peer silently exits
- #53403 winegstreamer "flush" removal breaks radio in fallout 3
- #53627 Max Payne: mouse scroll behaves erratically
- #53640 Bully: Scholarship Edition hangs on loading screen and doesn't play intros
- #53680 urlmon:url - test_BindToStorage() fails on Windows <= 8.1
- #53743 Vivisector has graphical glitches
- #53748 Sacred Gold (GOG): missing audio in .wmv videos
- #53752 Rayman 3: glitched graphics (black textures)
- #53785 Need for Speed: Payback crashes on launch with OpenGL renderer
- #53863 Tsui no Stella = Stella of the End: doesn't launch anymore (GL_INVALID_OPERATION)
- #53908 Comptes.exe errors with "dxLockMessage fails"
- #53995 d2d1:d2d1 runs out of GL memory and crashes on the debian 11 VM
- #54023 d3d11:d3d11 - test_dynamic_map_synchronization() fails on w11pro64_nv
- #54049 ddraw:ddraw2 test_texture_wrong_caps test triggers use after free bug
- #54170 20XX: invisible character
- #54184 Multiple applications fail http requests when WinHttpSendRequest() doesn't contain full request data
- #54191 Agarest 1 stopped showing Videos after implementing ASF Reader filter
- #54268 Moving the separator in regedit don't repaint listview
----------------------------------------------------------------
Changes since 8.0-rc2:
Alexandre Julliard (3):
d3d9/tests: Mark a texture sampling test as todo.
d3d9/tests: Mark a render target color test as todo.
d3d9/tests: Fix some activation/focus test failures.
Alistair Leslie-Hughes (2):
xactengine3_7/tests: Skip tests when XACTEngine Initialization fails.
include: Add missing enum XHR_PROP_ values.
André Zwing (3):
advapi32/tests: Don't test function directly when reporting GetLastError().
kernel32/tests: Don't test function directly when reporting GetLastError().
setupapi/tests: Don't test function directly when reporting GetLastError().
Biswapriyo Nath (1):
include: Add missing constants in d3d11.idl.
Eric Pouech (2):
comctl32/tests: Fix failing test on Windows in Arabic UTF-8.
comctl32/test: Adapt the edit tests for height to Win10+.
Floris Renaud (1):
po: Update Dutch translation.
Jinoh Kang (4):
user32/tests: Add tests for CS_HREDRAW and CS_VREDRAW.
win32u: Honor CS_HREDRAW and CS_VREDRAW when resizing window.
regedit: Use the default WM_PAINT implementation for REGEDIT window.
regedit: Clip siblings when drawing list and tree views.
Nikolay Sivov (1):
comctl32/tests: Ignore some IME messages in monthcal tests.
Philip K. Gisslow (1):
msi: Initialize all members of WINTRUST_DATA.
Piotr Caban (2):
msvcirt: Don't fail in streambuf_xsputn on 0xff character.
msvcirt: Fix ostream_print_char on 0 character.
Rémi Bernon (5):
dinput/tests: Reduce tests verbosity.
dinput/tests: Test W.G.I ramp effect with negative directions.
dinput/tests: Test W.G.I constant effect with negative direction.
dinput/tests: Test W.G.I periodic effect with negative direction.
dinput/tests: Test W.G.I condition effect with negative direction.
Tim Clem (3):
dinput/tests: Test granularity of the mouse z-axis.
dinput: Create object_properties for each mouse axis.
dinput: Add granularity to object_properties.
Vladislav Timonin (1):
comctl32/listview: Exclude header area in WM_NCPAINT.
Zebediah Figura (10):
ntdll/tests: Avoid testing the server pipe signaled state from the main thread.
d3d11/tests: Do not test deferred contexts in test_dynamic_map_synchronization().
d3d9/tests: Test uploading the whole mipmap chain in one map.
d3d8/tests: Test uploading the whole mipmap chain in one map.
wined3d: Load and invalidate every mipmap level when mapping the top mipmap level.
wined3d: Ignore DISCARD and NOOVERWRITE on buffers which are not GPU-accessible.
winegstreamer: Factor out a parser_create() helper.
winegstreamer: Protect the "streaming" member of struct parser with a separate lock.
winegstreamer: Explicitly sleep in the streaming thread when flushing.
d3d8: Filter out redundant buffer discards.
Zhiyi Zhang (1):
d2d1/tests: Fix memory leaks.
Ziqing Hui (2):
mfplat/tests: Test MFGetStrideForBitmapInfoHeader for NV11.
mfplat/tests: Add more RGB24 image size tests.