Wine-Announce
By message
wine-announce@list.winehq.org
By month
Threads by month
- ----- 2026 -----
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2003 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2002 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2001 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- 1 participants
- 698 discussions
The Wine development release 11.17 is now available.
What's new in this release:
- Bundled vkd3d upgraded to version 2.1.
- Initial support for display mode emulation.
- Better support for preferred UI languages.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/11.x/wine-11.17.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-11.17/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 11.17 (total 44):
- #23364 Tetris JR (win16) exits immediately
- #25373 Nokia S60 5th Edition SDK 1.0: epoc32 emulator and other tools fail to run (Wine's 'hal.dll' is preferred over native, causing failure to load app provided library with same name)
- #29851 Some part of PDFCreator installer cannot display Chinese correctly even Font Replacement is setting correctly
- #30155 SafeDisc v2.05.030 fails due to driver dispatch routine status and irp.IoStatus.u.Status differing (Command & Conquer: Red Alert 2)
- #32368 Bigrats: UI can't display normally and all the widgets didn't work
- #35056 64-bit PTC Pro Engineer Wildfire V5 installer fails (64-bit processors not reported in volatile hardware registry keys)
- #39336 VisualSubSync (ItaSA version) 1.0.2.1 crashes when pressing audio play button
- #42383 certmgr.exe is unable to import certificate in PKCS12 format
- #44137 Wine64 crashes with any 64-bit binary
- #45979 Advanced SystemCare 6.4 needs 'SWbemPropertySet::get__NewEnum' to iterate over 'Win32_PhysicalMedia' properties
- #46671 Biamp canvas crashes on startup
- #46815 PS4 Remote Play 2.x (.NET 4.x app) fails on startup, reports 'Cannot connect to the server.' (missing TEMP directory in user's Local AppData directory)
- #47062 Multiple E-Banking applications by KOBIL Systems GmbH crash on startup due to ntdll.NtQueryDirectoryObject '\\KnownDlls' failure (MigrosBank EBanking 8.2.x, Sparda Bank SecureApp 1.x)
- #47070 DA: Inquisition can't see gamepad
- #48534 32-bit MSXML 6.0 package fails to install in 64-bit WINEPREFIX 'package is not supported on the current processor type.'
- #49078 Sennheiser Wireless Systems Manager 4.4 server (.NET 4.5 app) crashes with 'System.ComponentModel.Win32Exception: Unknown error (0x80090308)'
- #49079 Multiple applications want support for CREATE_NO_WINDOW flag (0x08000000) in CreateProcess
- #50233 Signtools from Windows 10 SDK needs 'wintrust.CryptCATAdminAcquireContext2' implementation
- #50323 Multiple applications need 'Ws2_32.getservbyname' to read information from '%SystemRoot%\System32\Drivers\Etc\services' (Autodesk 3ds Max 9 RaySat service)
- #50572 LDAP_AUTH_NEGOTIATE login fails as authorization user is used instead of authentication user
- #53047 SketchUp 2021 installer quits with "IDS_ERROR_NO_WIZARD_PAGES" (native xmllite works around)
- #53241 wtsapi32:wtsapi - test_WTSEnumerateProcessesW() crashes if a process exits during the test?
- #56366 Worms Blast characters become grey/untextured
- #57983 getaddrinfo cannot handle "https" as the service string on some distros, but windows 10 can
- #58046 Horizon Chase Turbo: gamepad hotplugging doesn't work
- #58511 GunBound crashes on unimplemented function ntoskrnl.exe.KeAcquireGuardedMutex
- #59963 DWARF unwinding crashes on i386
- #60080 GTA: Vice City - Blank white screen during intro video
- #60094 Marathon crashes on launch
- #60095 GTA: San Andreas videos are not displayed when using exclusive fullscreen
- #60140 Signature from BCryptSignHash with RSA 512 key and PSS padding cannot be verified
- #60218 Ground Control: Mouse movement is confined to a small area
- #60219 Ankh - Anniversary Edition: Some textures are rendered black
- #60221 Clive Barker's Jericho Demo has a non-fatal msiexec crash during install
- #60223 IMFTimedText and related APIs missing
- #60226 Wine XInput: XInputGetState returns 0 buttons for connected Bluetooth Xbox One controller
- #60229 Netscape Navigator 3.04 for Windows 3.1 crashes on start on a null pointer
- #60247 SetWindowLongPtr succeeds on a window owned by another process, resulting in a crash
- #60252 winedmo: Issue with demuxer destructor logic
- #60256 Wine application prevents X11 root window from receiving mouse button events
- #60257 win32u: send_mouse_motion() skips resetting raw_mouse.count on empty input, causing a heap buffer overflow
- #60267 Multiple E-Banking applications by KOBIL Systems GmbH terminate on startup due to missing WBEM namespace 'ROOT\SecurityCenter2' (MigrosBank EBanking 8.2.x, Sparda Bank SecureApp 1.x)
- #60275 xEdit (fo4edit, fo3edit) cannot run after 11.15
- #60285 Star Wars: Knights of the Old Republic I/II crash after start
### Changes since 11.16:
```
Akihiro Sagawa (5):
winegstreamer: Make sure every stream has a buffer or an initial gap on initialization.
quartz/tests: Add a timestamp test for the first sample.
winegstreamer: Change wg_parser_create argument from bool to bit flags.
winegstreamer: Rebase PTS values so the stream starts at zero.
winegstreamer: Fix GstCaps reference leak in wg_parser_stream.
Alex Henrie (2):
krnl386: Don't free DISCARDABLE resources in FreeResource16.
compobj: Ensure compobj_malloc is initialized in CoGetMalloc16.
Alexandre Julliard (33):
kernel32/tests: Fix incorrect tests for UI languages with zero flags.
vkd3d: Import upstream release 2.1.
ntdll: Load the system and user UI languages from the registry.
ntdll: Implement RtlGetSystemPreferredUILanguages and RtlGetUserPreferredUILanguages.
ntdll: Implement RtlGet/SetProcessPreferredUILanguages.
ntdll: Partially implement RtlGet/SetThreadPreferredUILanguages.
kernelbase: Reimplement GetThreadUILanguage on top of GetThreadPreferredUILanguages.
kernelbase: Reimplement SetThreadUILanguage on top of SetThreadPreferredUILanguages.
mlang/tests: Enable some ifdef'ed out traces.
mlang/tests: Remove skips for old Windows versions.
mlang/tests: Run some tests in an English locale.
kernel32/tests: Run some tests in an English locale.
jscript/tests: Run some tests in an English locale.
wininet/tests: Run some tests in an English locale.
ieframe/tests: Run tests in an English locale.
mshtml/tests: Run tests in an English locale.
pdh/tests: Run tests in an English locale.
ntdll: Implement RtlpQueryDefaultUILanguage.
ntdll: Return the default user UI language for LOCALE_CUSTOM_UI_DEFAULT.
ntdll: Return the default system UI language for LOCALE_CUSTOM_DEFAULT.
kernelbase: Reimplement GetSystem/UserDefaultUILanguage on top of RtlpQueryDefaultUILanguage.
kernelbase: Add a helper to convert a LCID to a sort locale.
kernelbase: Use the default user UI language for LOCALE_CUSTOM_UI_DEFAULT.
kernelbase: Use the default system UI language for LOCALE_CUSTOM_DEFAULT.
ntdll: Use the preferred UI language list to load resources.
include: Fix wscanf* prototypes.
include: Fix typos in Unicode macros.
include: Fix typos in vtbl macros.
ntdll: Fix mmap_is_in_reserved_area when area starts in the middle of the specified range.
wow64: Check that the entire memory allocation is within the user space range.
vbscript/tests: Run some tests with an English UI language.
shlwapi/tests: Run some tests with an English UI language.
faudio: Import upstream release 26.09.
Alistair Leslie-Hughes (1):
include: Use RECT directly instead of tagRECT define.
Alvin Philips (1):
winebus: Clarify that the Disable Hidraw toggle also affects the IOHID backend in trace message.
Bernhard M. Wiedemann (1):
wscript: Use angle brackets to include the generated ihost.h.
Bernhard Übelacker (3):
wbemdisp: Avoid out-of-bounds read in objectpath_get_DisplayName.
mfplat/tests: Add broken to avoid some test failures.
msv1_0: Fix string termination in ntlm_pool_get_ctx.
Brendan Shanks (7):
ntdll: Spawn a Wine system thread for the macOS main thread on launch.
winemac: Fix memory leak in get_format_entries().
winemac: Stop using deprecated kUTTypeContent/kUTTypeData.
winemac: Remove WineDisplayLink.
winemac: Remove now-unnecessary check for MTLDevice.registryID.
winemac: Stop using deprecated [NSGraphicsContext graphicsPort].
winemac: Stop setting deprecated NSWindow.oneShot.
Connor McAdams (6):
setupapi: Add tests for class device enumeration order.
setupapi: Add a few more SetupDiGetClassDevs() tests.
setupapi: Validate enumerator string passed into SetupDiGetClassDevs().
setupapi: Use CM_Get_Device_ID_List() to implement SetupDiGetClassDevs() for devices.
setupapi: Use CM_Get_Device_Interface_List() to implement SetupDiGetClassDevs() for interfaces.
setupapi: Use cfgmgr32 functions to implement remove_all_device_ifaces().
Conor McCarthy (8):
wbemdisp: Rename propertyset object to class_object.
wbemdisp: Implement ISWbemPropertySet::NewEnum().
wbemdisp: Initialise the variants in enumvar_Next().
wbemdisp: Implement ISWbemMethodSet::NewEnum().
wbemdisp: Implement get ISWbemProperty::Name.
wbemdisp: Add ISWbemQualifierSet stub implementation.
wbemdisp: Add ISWbemQualifierSet enumerator stub implementation.
mfreadwrite: Queue only one output sample while draining transforms.
Daniel Lehman (2):
ntdll/tests: Add tests for RemoveDirectory with open FindFirstFile handle.
ntdll: Open directory handle with FILE_SHARE_DELETE in FindFirstFileW.
Dmitry Timoshkov (3):
crypt32/tests: Add missing CryptEncodeObjectEx() return value check.
crypt32: CryptMsgGetParam(CMSG_SIGNER_UNAUTH_ATTR_PARAM) should set returned size to 0 if there's no attributes.
crypt32: CryptMsgGetParam(CMSG_SIGNER_AUTH_ATTR_PARAM) should set returned size to 0 if there's no attributes.
Elizabeth Figura (4):
ntdll: Implement NtSetVolumeInformationFile(FileFsLabelInformation).
kernel32: Reimplement SetVolumeLabel() using NtSetVolumeInformationFile().
d3d9: Fix clearing flags for managed resources.
wined3d: Store the device functions in context_vk.
Esme Povirk (6):
coml2: Fix missing check for bytes read.
gdiplus: Fix GdipMeasureDriverString with length == 0.
gdiplus: Touch all points in GdipClearPathMarkers.
gdiplus: Add validation to GdipSetImageAttributesNoOp.
gdiplus: Fix incorrect pointer cast writing pens to emf+.
gdiplus: Pass through status code in metafile_deserialize_path.
Etaash Mathamsetty (3):
ntoskrnl.exe: Implement PsGetProcessSessionId.
ntoskrnl.exe: Use the cached session id in PsGetCurrentProcessSessionId.
ntoskrnl.exe: Implement PsGetProcessCreateTimeQuadPart.
Evan Morse (5):
ntdll: Return the object manager status from NtQueryFullAttributesFile.
server: Rewind the directory stream when checking if it is empty.
ntdll/tests: Test SYNCHRONIZE requirement for synchronous I/O options.
ntdll: Request SYNCHRONIZE access with the synchronous I/O options.
ntdll: Require SYNCHRONIZE access for the synchronous I/O options.
Francis De Brabandere (3):
vbscript: Treat a dot right after a keyword as a with-statement dot.
vbscript: Initialize the function pointer before the recursion limit check.
vbscript: Return "Object not a collection" for For Each on Nothing.
Gabriel Ivăncescu (9):
mshtml: Don't throw when retrieving window.external if the DocHost returns E_NOINTERFACE.
jscript: Fix interpreted function.prototype on-demand creation by updating value in-place.
jscript: Don't call the setter for non-writable builtin props.
jscript/tests: Move some tests in lang.js down.
jscript: Use no_gc_traverse for host functions and constructors.
jscript: Get rid of the obj parameter in gc_process_linked_obj.
jscript: Get rid of the obj parameter in gc_process_linked_val.
jscript: Replace the addref/release methods for host objects with get_host_disp.
jscript: Use get_host_disp in the vtbl when retrieving the host outer dispatch.
Gijs Vermeulen (1):
msi: Pass deformated target to HANDLE_CustomType7 in ACTION_CustomAction.
Hans Leidekker (81):
msi: Propagate ERROR_NO_MORE_ITEMS return from custom actions.
msi: Handle NULL params in build_msiexec_args().
wbemdisp: Implement property_get_CIMType().
webservices: Fix nil value check for a couple of types.
webservices: Fix error return in WsReadStartAttribute() and read_comment_bin().
webservices: Handle NULL msg->action in message_insert_http_headers().
webservices: Fix buffer size check in build_dict().
webservices: Remove redundant assignment in grow_strs_array().
webservices: Avoid NULL dereference on error in str_to_qname().
webservices: Decrement len after consuming closing bracket in WsDecodeUrl().
webservices: Correctly initialize loop counter in WsWriteArray().
webservices: Use configured backlog value in open_listener_tcp().
webservices: Fix memory leak on error path in dup_message_mapping().
webservices: Fix memory leak on error in dup_fault().
webservices: Use proper type in queue_write_message_end().
webservices: Correctly parse fragment in WsDecodeUrl().
winhttp: Use %lu to format unsigned integer in send_request().
include: Remove duplicate defines.
winhttp: Fix potential buffer overflow in finished_reading().
winhttp: Validate scheme and hostname length in run_script().
winhttp: Fix return length for ICU_ESCAPE with null-terminated string in get_comp_length().
winhttp: Fix a trace in request_set_option().
winhttp: Validate day of week and month in WinHttpTimeFromSystemTime().
winhttp: Fix error value returned from send_socket_shutdown().
winhttp: Check for allocation failure in add_domain().
bcrypt: Remove duplicate chain mode field.
bcrypt: Return proper values from ecc_blob_curve().
bcrypt: Fix parameter validation in BCryptDeriveKeyCapi().
bcrypt: Verify len against output buffer size in import_key().
msi: Fix memory leak on error in append_productcode().
msi: Fix handle leak on error in get_fusion_filename().
msi: Fix row index in DELETE_execute().
msi: Handle tables without primary key columns in add_table_to_db().
msi: Handle empty string properties in read_properties_from_data().
msi: Fix buffer size calculation in TransformView_add_column().
msi: Handle NULL return from msi_dup_record_field() in get_signature().
msi: Handle missing manifest file in msi_install_assembly().
msi: Consistently check dialog_add_control() failure.
msi: Handle NULL text in dialog_hyperlink().
msi: Remove unused field from struct drop_view.
msi: Fix error message in apply_substorage_transform().
wbemprox: Add SecurityCenter2 namespace.
msi: MsiSetMode() returns UINT.
msi: Handle CreateNamedPipeW() failure.
msi: Fix return values in cabinet_copy_file().
msi: Validate buffer parameters in MsiGetPatchInfoA/W().
msi: Handle NULL folder->ResolvedTarget in set_target_path().
msi: Handle NULL guids in msi_check_patch_applicable().
msi: Fix out-of-bounds read in decode_base85_guid().
msi: Don't free caller owned buffer on error in TransformView_delete_row().
msi: Handle empty file in read_text_archive().
msi: Fix potential heap buffer overflow in DISTINCT_execute().
msi: Avoid out-of-bounds read in read_properties_from_data().
msi: Avoid out-of-bounds read in sqliteGetToken().
widl: Fix buffer size in add_composable_attr_step2().
widl: Pass correct target table in serialize_methodimpl_table().
wbemprox: Zero-initialize columns in create_signature_columns_and_data().
wbemprox: Add NULL check in class_object_GetMethod().
wbemprox: Avoid using uninitialized pointer in wbem_context_Clone().
wbemprox: Use appropriate value for pointer return.
wbemprox: Pass correct buffer size to swprintf() in fill_cache_memory() and fill_processor().
wbemprox: Fix memory leak on error in get_owner().
wbemprox: Fix off-by-one in enum_class_object_Skip().
wbemprox: Set query namespace in wbem_services_ExecNotificationQueryAsync().
wbemprox: Fix cleanup of associations.
wbemprox: Fix memory leak on error in get_pnp_entities() and get_display_adapters().
wbemprox: Fix memory leak on error in class_object_SpawnInstance().
wbemprox: Fix memory leak on error in create_signature_columns_and_data().
wldap32: Fix a memory leak in WLDAP32_ldap_unbind_s().
wldap32: Fix buffer overflow in escape_filter_element().
wldap32: Don't try to free a static buffer in ldap_get_paged_count().
wldap32: Avoid double free in ldap_search_init_pageW().
wldap32: Free memory on error in create_page_control().
secur32: Properly validate context handle in schan_Encrypt/DecryptMessage().
secur32: Remove an outdated comment.
secur32: Fix misplaced parentheses in schan_set_application_protocols().
secur32: Fix memory leak on error in ensure_remote_cert().
secur32: Fix a memory leak on error in get_key_container_path().
secur32: Free GnuTLS credentials on error in acquire_credentials_handle().
secur32: Pass correct comment length in _copyPackageInfoFlatWToA().
secur32: Use the right deallocator in thunk_ContextAttributesAToW().
Henri Verbeet (2):
wined3d: Don't link to libdxguid.
d3dcompiler: Implement D3DReflect() on top of D3DReflectVKD3D().
Huoju Cheng (1):
gdiplus: Fix font family lookup after font substitution.
Ivo Ivanov (3):
dinput: Make instance guid Data4 last bytes similar to Windows.
hidclass.sys: Use FDO instance_id instead of serial number for multi-TLC child PDOs.
winebus.sys: Return an error on IOCTL_HID_GET_STRING when no serial number is available.
Jacek Caban (12):
winegcc: Handle CPU_ARM64EC in get_multiarch_dir.
ntdll: Check that the pointer is within the address space limits before accessing EcCodeBitMap.
ntdll: Don't modify non-volatile registers before switching to the kernel stack in the ARM64 syscall dispatcher.
ntdll: Avoid exposing ARM64 syscall dispatcher to the client side.
wow64: Don't use static for pBTCpuSimulate.
winegstreamer: Silence -Wunused-but-set-global warning.
gitlab: Update to llvm-mingw 20260826.
ntdll: To try to handle suspend doorbell in leave_syscall_callback if the thread is in simulation.
ntdll: Move KiUserEmulationDispatcher handling to restore_context.
ntdll: Define make_esr only on Linux targets.
ntdll: Suppress debug events during CPU simulation.
ntdll/tests: Adjust ARM64EC Rip tests in test_debugger for current Windows versions.
Ken Sharp (1):
wined3d: Cast UINT64 handles to avoid compiler warnings.
Matteo Bruni (10):
d3dx10/tests: Disable two cube textures tests with invalid texture dimensions.
d3dx11/tests: Disable two cube textures tests with invalid texture dimensions.
d3dx10/tests: Tweak a sRGB test to avoid undefined behavior on Windows.
d3dx11/tests: Tweak a sRGB test to avoid undefined behavior on Windows.
d3dx11/tests: Get rid of a debug trace.
d3dcompiler/tests: Get rid of a debug trace.
d3dx9: Move D3DXSHProjectCubeMap() implementation to texture.c.
d3dx9: Move some exports from mesh.c to math.c.
d3dx10: Use shared code for math exports.
include: Add some function prototypes to d3dx10math.h.
Michel Weinachter (7):
ntdll: Make RtlCopySid() return NTSTATUS instead of BOOLEAN.
ntoskrnl.exe: Implement MmMapLockedPagesSpecifyCache().
ntoskrnl.exe/tests: Test the MDL flags maintained by test_mdl_map().
ntoskrnl.exe: Implement MmUnmapLockedPages().
ntoskrnl.exe: Implement MmProbeAndLockPages() and MmUnlockPages().
ntoskrnl.exe/tests: Test MmBuildMdlForNonPagedPool().
ntoskrnl.exe: Implement MmBuildMdlForNonPagedPool().
Nat Brown (1):
ntdll: Keep reserved area bounds page aligned when avoiding 4GB wrap-around.
Nello De Gregoris (12):
evr: Implement IMFVideoDisplayControl::SetRenderingPrefs().
evr/tests: Add tests for IMFVideoDisplayControl rendering preferences.
winegstreamer/wma_decoder: Implement GetInputCurrentType.
winegstreamer/wma_decoder: Implement GetOutputCurrentType.
ntoskrnl.exe: Add stub for KeRegisterBugCheckCallback().
ntoskrnl.exe: Add stub for KeRegisterBugCheckReasonCallback().
ntoskrnl.exe: Add stub for KeDeregisterBugCheckReasonCallback().
ntoskrnl.exe/tests: Add tests for PsGetProcessSessionId.
winegstreamer: Add winegstreamer_create_wma_decoder().
wmadmod: Create the decoder without CoCreateInstance().
xaudio2/tests: Test creating an xWMA source voice without COM.
ntoskrnl.exe/tests: Add tests for PsGetProcessCreateTimeQuadPart.
Nickita Biryulin (1):
server: Remove dangling pointer from load_version_resource.
Nikolay Sivov (77):
mfplat/tests: Remove todo on now succeeding test.
include: Add IMFTimedText* definitions.
comdlg32/filedlg: Improve CDM_GETFILEPATH when view has an active selection.
comdlg32/filedlg: Handle allocation failures in the CDM_GETFILEPATH handler.
comdlg32: Use ReleaseStgMedium() from ole32.
msxml3: Move transformNodeToObject() to a reusable helper.
msxml3: Add explicit traces for unsupported destination objects in transformNodeToObject().
msxml3: Remove a workaround when transforming to a document by using the document stream.
msxml3/tests: Add some tests for IXSL* object properties.
msxml3: Implement stylesheet property getter.
msxml3: Implement ownerTemplate() property.
shell32/shellview: Implement Ctrl-A shortcut for the item list.
msxml3/dom: Fix a typo in a node type string.
msxml3: Unconditionally release bind context instance.
mfplat: Fix a typo in the async write stream callback.
mfplat: Remove duplicated checks from the wrapper stream methods.
include: Fix PJOBOBJECT_END_OF_JOB_TIME_INFORMATION type.
include: Fix duplicated EnumServicesStatus macro.
include: Fix a typo in OPEN_VIRTUAL_DISK_VERSION enum member.
include: Fix AW macros in shlwapi.h.
include: Add missing macros for ID3DXRenderToEnvMap::OnResetDevice().
include: Fix MoveFileTransacted macro.
server: Fix freeing unlinked windows.
msado15: Initialize variant before copying to it.
msado15: Forward to correct method in IRowsetExactScroll::Hash().
msado15: Fix allocation failure check in FindNextRow().
msado15: Fix variant type check when getting bookmark data.
msado15: Fix column info leak on failure paths.
msado15: Initialize refcount for the Property objects.
d2d1: Check for allocation failures when recording command lists.
d2d1: Fix potential brush use-after-free in geometry fill recording.
d2d1: Put command list in error state on brush creation failure right away.
d2d1: Better handle NULL locale name when recording DrawGlyphRun() calls.
dwrite/ot: Fix TTC header read size.
dwrite: Remove duplicated weight pattern check.
dwrite/format: Use consistent way to check for format property changes.
dwrite: Fix a leak on error path in the resource stream.
evr: Return failure for unsupported interfaces on MR_VIDEO_RENDER_SERVICE.
evr/mixer: Fix a copy-paste type in aperture values handling.
evr/presenter: Fix potential use-after-free on swapchain interface.
scrrun/stream: Remove wrong object release on file read failure.
oleaut32/olepicture: Consistently use CRT allocation functions.
oleaut32: Fix allocation failure check in SafeArrayGetElement().
oleaut32: Use correct types for UI8/I8 -> UI2 conversion.
oleaut32: Use correct fields in VarSub() between UI1 values.
dbgeng: Remove unnecessary static variables.
dbgeng/tests: Add a GetModuleParameters() test with start module index.
dbgeng: Fix GetModuleParameters() used with start module index.
winedmo: Use correct parameter structure in wow64_demuxer_destroy().
winedmo: Do not access freed context on cleanup.
dxgi: Fix cleanup path on CreateSurface() failure.
dxgi: Correctly initialize output pointer on GetResource() failure.
dxgi: Use correct flags value in the trace message.
atl: Fix typelib instance leak in AtlGetObjectSourceInterface().
atl: Do not use interface pointer after it's been released in AtlAxCreateControlLicEx().
d3d10: Do not reference adapter on failure path of the device creation.
d3d10_1: Do not reference adapter on failure path of the device creation.
d3d11: Do not reference adapter on failure path of the device creation.
winewayland: Use null-terminated string for the clipboard class name.
ntdll: Use appropriate status code on allocation failure in TpAllocIoCompletion().
d3dx10/tests: Add another sprite rendering test to verify sampler filter type.
d3dx10/tests: Add a sprite immediate rendering tests with non-empty batch.
d3dx10: Partially implement sprite rendering.
d3dx10: Implement sprite view transform methods.
propsys: Remove duplicated property info entry.
propsys: Do not check for null string pointers in InitPropVariantFromStringVector().
propsys/tests: Add a test for PropVariantCompareEx(VT_CLSID,VT_LPWSTR).
propsys: Use coerced value for VT_CLSID case in PropVariantCompareEx().
propsys: Use coerced value for VT_UI1 vectors case in PropVariantCompareEx().
kernel32: Add SetThreadpoolTimerEx() implementation.
include: Remove duplicated macros from commdlg.h.
include: Remove duplicated definitions from d3d9types.h.
include: Remove duplicated prototype from gdiplusflat.h.
include: Fix IF_TYPE_PLC value.
include: Fix KSDATAFORMAT_ATTRIBUTES value.
include: Remove duplicated prototype from corecrt_wstdio.h.
include: Use correct type for SERVICE_INFOW fields.
Paul Gofman (3):
win32u: Only resolve default draw framebuffer before blit or readback.
ntdll: Remove a leftover no-op line in RtlCopyExtendedContext().
ntdll/tests: Fix two tests in test_extended_context() wrongly using ternary expression.
Pavel Cheloveckov (1):
po: Update Russian translation.
Piotr Caban (20):
kerberos: Fix wow64 unseal_message wrapper.
kerberos: Don't access Lsa mode data in user mode functions.
kerberos: Fix copying data to wow client in LsaApCallPackageUntrusted.
secur32: Avoid LSA_SEC_HANDLE truncation when moving handle between 32 and 64-bit processes.
programs: Add SamSs service stub.
secur32: Retrieve security packages list from lsass.exe.
secur32: Call LSA mode functions from lsass.exe.
msv1_0: Support ISC_REQ_MUTUAL_AUTH in ntlm_SpInitLsaModeContext.
msv1_0: Reply with password if ntlm_auth asks for it.
msv1_0: Reuse ntlm_auth processes.
msv1_0: Initialize output buffer on successfull local authentication.
lsass: Accept NULL timestamps in initialize_security_context and accept_security_context.
secur32: Fix memory allocation in LsaGetLogonSessionData.
rsaenh/tests: Add more tests for RSA keys with public exponent 1.
symcrypt: Don't use SymCryptIntExtendedGcd to compute private exponent if public exponent is 1.
rsaenh: Fix buffer size passed to SymCryptIntCreate in rsa_decrypt().
msv1_0: Fix error handling in ntlm_SpAcceptLsaModeContext.
msv1_0: Use NTLM local authentication when empty authentication data is provided.
secur32: Handle SECPKG_ATTR_PACKAGE_INFO in lsa_QueryContextAttributesA.
msv1_0: Handle SECPKG_ATTR_PACKAGE_INFO in ntlm_SpQueryContextAttributes.
Rémi Bernon (40):
win32u: Flush mouse input motion when hitting the clipping rect edges.
opengl32: Use the drawable latched virtual size for multisample resolve.
opengl32: Use the drawable latched virtual size for front buffer emulation.
win32u: Initialize framebuffer attachment storage before binding them.
win32u: Avoid requiring OpenGL 4.5 for the framebuffer surface.
opengl32: Always isolate some object names allocated in win32u.
win32u: Create textures for the FBO single sampled surfaces.
win32u: Swap front / back color attachments in framebuffer_surface_swap.
win32u: Avoid unnecessary internal / client context switches.
win32u: Introduce an optional target surface for the framebuffer surface.
win32u: Allow creating client surfaces with raw physical coordinates.
win32u: Support OpenGL scaling according to emulated resolution.
win32u: Use the framebuffer target drawable in make_client_context_current.
win32u: Only flag client surfaces as updated if something changed.
win32u: Implement a default gamma ramp when emulating display modes.
win32u: Support gamma ramp emulation in GL when emulating display modes.
opengl32: Fix multisampled default framebuffer draw buffer resolution.
win32u: Use SRGB framebuffer if target default FBO is SRGB capable.
win32u: Restore set_window_long_internal GWLP_WNDPROC check.
opengl32: Move extension string filtering to the PE side.
win32u: Move context extensions parsing from opengl32.
win32u: Initialize global extensions with the global context.
win32u: Move some global extension checks from winemac.
opengl32: Hide some unix-only extensions from the PE side.
joy.cpl: Fix incorrect POV index in paint_povs_view.
joy.cpl: Remove unnecessary thread_stop / state_event events creation.
joy.cpl: Clear device interfaces when switching tab.
joy.cpl: Check IID_IGameController QueryInterface result.
joy.cpl: Avoid underflow when setting motor vibration.
winex11: Keep track of mouse device and pointer button mappings.
winex11: Listen to raw mouse button events on the root window.
opengl32: Fix and simplify WOW64 string allocation.
opengl32: Fix incorrect mask for GL_BACK_RIGHT.
win32u: Fix egldrv_describe_pixel_format array bound check.
win32u: Fix some truncated query_renderer_integer memcpy.
user32: Fix some length overflows in init_class_name(_ansi).
win32u: Avoid possible buffer overflow in NtUserGetAtomName.
server: Cast cls_extra - size to int before comparison.
winevulkan: Check for returnedonly on individual members.
winevulkan: Don't flag dynamic array / lengths as returnedonly.
Shaun Ren (1):
windowscodecs: Always pass a valid pcbRead pointer to IStream::Read().
Sven Baars (1):
gitlab: Install libva-dev.
Thibault Payet (1):
ntdll/unix: Fix logical_proc_info_add_numa_node parameter order.
Vibhav Pant (2):
rometadata/tests: Add tests for IMetaDataImport::{EnumInterfaceImpl, GetInterfaceImplProps, FindTypeRef}.
rometadata/tests: Add initial tests for WinRT metadata shipped with Windows.
Ziia Shi (2):
pdh: Avoid access violation in PdhCloseQuery on bad handle.
powrprof: Stub PowerReadACValueIndex.
```
1
0
The vkd3d team is proud to announce that release 2.1 of vkd3d, the 3D graphics
porting library, is now available.
The source is available from the following location:
<https://dl.winehq.org/vkd3d/source/vkd3d-2.1.tar.xz>
The current source can also be pulled directly from either of these git
repositories:
<https://gitlab.winehq.org/wine/vkd3d.git>
<https://codeberg.org/vkd3d/vkd3d.git>
Vkd3d is available thanks to the work of multiple people. See the file AUTHORS
for the complete list.
# What's new in vkd3d 2.1
### libvkd3d-shader
- New features and improvements for the HLSL source type:
- A flaw has been fixed where nested function calls of the form
‘g(f(1), f(2), f(3));’ would be compiled like ‘g(f(3), f(3), f(3));’.
- A new dead store elimination pass. Its primary purpose is to eliminate
unused uniforms in shader model 1-3 target profiles, allowing vkd3d-shader
to more closely match the constant table layout produced by
d3dcompiler/fxc.
- Arithmetic operations on ‘half’ types in shader model 4 and 5 target
profiles.
- Stricter validation of allowed and required semantics on shader inputs and
outputs. Notably:
- User-defined semantics on outputs are explicitly rejected in shader
model 4 and 5 pixel shader target profiles. These never worked, but
would previously either be rejected by the target, or produce invalid
output.
- Semantics on unused input and outputs are not validated in shader model
1-3 target profiles. This matches the behaviour of d3dcompiler/fxc.
- Shader model 1-3 vertex shader target profiles require ‘position’
outputs.
- Shader model 1-3 pixel shader target profiles require ‘color’ outputs.
- The effects (FX) target can output numeric states and shader objects in
‘fx_2_0’ profiles.
- New features and improvements for the legacy Direct3D byte-code source type:
- The ‘sub’ and ‘break_cmp’ instructions.
- The ‘\_x2’, ‘\_x4’, ‘\_x8’, ‘\_d2’, ‘\_d4’, and ‘\_d8’ instruction
modifiers.
- The ‘\_bias’, ‘\_x2’, ‘\_bx2’, ‘negate’ (‘-register’), and ‘invert’
(‘1 - register’) source operand modifiers.
- The SPIR-V target supports floating-point to 64-bit signed and unsigned
integer conversion operations. These typically originate from DXIL sources.
- New features and improvements for the experimental OpenGL Shading Language
target type:
- Indirect addressing of shader input registers.
- Load and store operations on raw and structured unordered access views and
thread group shared memory.
- Atomic compare/exchange and integer addition operations.
- Bit scanning and counting operations.
- Barrier operations.
- ‘SV_GroupID’, ‘SV_GroupIndex’, and ‘SV_GroupThreadID’ inputs.
- New interfaces:
- The VKD3D_SHADER_COMPILE_OPTION_BACKCOMPAT_ALLOW_HALF_GLOBALS flag
specifies that global variables with ‘half’ types in HLSL sources should
be compiled as if they had the corresponding ‘float’ types.
### libvkd3d-utils
- New shader reflection features and improvements:
- The GetDesc() method of the ID3D12ShaderReflection interface now returns
all information contained in the D3D12_SHADER_DESC structure.
- The following methods of the ID3D12ShaderReflection interface are
implemented:
- GetBitwiseInstructionCount()
- GetConstantBufferByName()
- GetConversionInstructionCount()
- GetGSInputPrimitive()
- GetMovInstructionCount()
- GetMovcInstructionCount()
- GetResourceBindingDescByName()
- GetThreadGroupSize()
- GetVariableByName()
- IsSampleFrequencyShader()
- The GetVariableByName() method of the ID3D12ShaderReflectionConstantBuffer
interface is implemented.
- The following methods of the ID3D12ShaderReflectionType interface are
implemented:
- GetMemberTypeByName()
- GetMemberTypeName()
- IsEqual()
- The ID3D10ShaderReflection, ID3D10ShaderReflection1, and
ID3D11ShaderReflection interfaces are implemented. Where applicable,
everything above also applies to the version 10, 10.1, and 11 equivalents
of the methods mentioned above.
- When the D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY flag is specified,
D3DCompile2VKD3D() will consider global variables with ‘half’ types to have
the corresponding ‘float’ types. Without this flag, global variables with
‘half’ types are not allowed. This change also applies to D3DCompile() and
D3DCompile2(), which behave like D3DCompile2VKD3D() called with a
‘compiler_version’ of 47.
- New interfaces:
- D3DPreprocessVKD3D() is a variant of D3DPreprocess() that allows
targeting the behaviour of a specific d3dcompiler version.
- D3DReflectVKD3D() is a variant of D3DReflect() that allows
targeting the behaviour of a specific d3dcompiler version.
- D3D10ReflectShader() is equivalent to calling D3DReflectVKD3D() with an
‘iid’ of ‘IID_ID3D10ShaderReflection’ and a ‘version’ of 0.
### vkd3d-compiler
- The ‘--allow-half-globals’ option specifies that global variables with
‘half’ types in HLSL sources should be compiled as if they had the
corresponding ‘float’ types.
- The Windows build of vkd3d-compiler will default to colour output when it's
able to determine that the output is a device capable of interpreting
virtual terminal sequences.
### vkd3d-dxbc
- The ‘--input’ option specifies the input to use for subsequent ‘--update’
options.
- The ‘--update’ option specifies a section to update with the contents of the
current input. For example,
‘vkd3d-dxbc -i priv.bin -u t:PRIV in.dxbc > out.dxbc’ would replace the
private data section of ‘in.dxbc’ with the contents of ‘priv.bin’, and write
the result to ‘out.dxbc’.
- The Windows build of vkd3d-dxbc will default to colour output when it's able
to determine that the output is a device capable of interpreting virtual
terminal sequences.
### Changes since vkd3d 2.0:
```
Elizabeth Figura (55):
vkd3d-utils: Add a D3DPreprocessVKD3D() that allows configuring DLL version.
tests/hlsl_d3d12: Test zero sized includes.
vkd3d-utils: Factor out an init_preprocess_info() helper.
vkd3d-utils: Always supply a "pfn_close_include" callback in init_preprocess_info().
vkd3d-utils: Pass the include context structure for all includes in init_preprocess_info().
vkd3d-utils: Return E_INVALIDARG when opening an empty file in open_include().
vkd3d-shader/d3dbc: Rename d3dbc_compiler variables to "compiler".
vkd3d-shader/hlsl: Remove a redundant hlsl_types_are_equal().
tests: Decrement "refcount_empty3" in test_include_Close().
vkd3d-shader/hlsl: Remove some obsolete block parameters.
vkd3d-shader/hlsl: Don't call allocate_register_reservations() for semantics.
vkd3d-shader/hlsl: Remove an obsolete comment.
vkd3d-shader/d3dbc: Handle 1.x COLOR in sm1_register_from_semantic_name().
vkd3d-shader/hlsl: Remove an unnecessary check for 1.x PS output.
vkd3d-shader/ir: Introduce a separate register type for oPts.
tests/shader_runner: Account for tessellation in get_runner_test_mask().
vkd3d-shader/hlsl: Get rid of the "optimize" argument to allocate_semantic_register().
vkd3d-shader/hlsl: Use allocators corresponding to the signature in allocate_semantic_registers().
vkd3d-shader/hlsl: Call generate_vsir_signature_entry() from allocate_semantic_register().
vkd3d-shader/hlsl: Move some validation to allocate_semantic_register().
vkd3d-shader/hlsl: Move signature construction directly into allocate_semantic_register().
tests/hlsl: Test semantics required by vertex and pixel shaders.
vkd3d-shader/hlsl: Validate that position is output for d3dbc targets.
vkd3d-shader/hlsl: Validate that colour is output for d3dbc targets.
vkd3d-shader/hlsl: Simplify updating temp_count for 1.x in allocate_temp_registers().
vkd3d-shader/hlsl: Process the loop iterator in transformation passes.
vkd3d-shader/hlsl: Rename some deref functions to hlsl_deref_*().
vkd3d-shader/hlsl: Add a hlsl_deref_init_child() helper.
vkd3d-shader/hlsl: Construct a deref directly in prepend_input_var_copy().
vkd3d-shader/hlsl: Construct a deref directly in append_output_var_copy().
vkd3d-shader/hlsl: Use hlsl_block_add_*() helpers in prepend_input_copy().
vkd3d-shader/hlsl: Use hlsl_block_add_load_index() in lower_index_load().
vkd3d-shader/hlsl: Use hlsl_block_add_load_index() in copy_propagation_replace_with_deref().
vkd3d-shader/hlsl: Pass a block to hlsl_new_load_parent().
vkd3d-shader/hlsl: Use block helpers in lower_return().
vkd3d-shader/hlsl: Add a hlsl_block_add_bool_constant() helper.
vkd3d-shader/hlsl: Use block helpers in prepend_uniform_copy().
vkd3d-shader/hlsl: Make hlsl_new_store_index() static.
tests/hlsl: Add a v# indexing shader test.
vkd3d-shader/glsl: Copy outputs using their element index in shader_glsl_shader_epilogue().
vkd3d-shader/glsl: Declare separate variables for each input signature element.
vkd3d-shader/glsl: Handle arrayed inputs.
vkd3d-shader/glsl: Implement support for indirect input register addressing.
vkd3d-shader: Use the vsir signature in vsir_program_copy_d3dbc_input_to_indexable_temp().
vkd3d-shader/glsl: Do not skip UNUSED outputs with a system value.
vkd3d-shader/glsl: Do not guard RET behaviour for sm1.
vkd3d-shader/hlsl: Enable MINIMUM_PRECISION when generating the vsir signature.
vkd3d-shader/hlsl: Handle sm4 TARGET in generate_signature_entry().
vkd3d-shader/hlsl: Fix mask handling in sm1_generate_vsir_init_dst_operand_from_deref().
vkd3d-shader/d3dbc: Introduce struct d3dbc_instruction.
vkd3d-shader/d3dbc: Introduce struct d3dbc_semantic.
vkd3d-shader/d3dbc: Move TEXKILL normalisation to shader_sm1_read_instruction().
vkd3d-shader/d3dbc: Introduce a separate field in d3dbc_instruction for DEF* constants.
vkd3d-shader/d3dbc: Introduce struct d3dbc_operand.
vkd3d-shader/d3dbc: Introduce enum d3dbc_register_type.
Evan Tang (1):
tests/d3d12: Test buffer SRVs with single-texel offsets.
Francisco Casas (23):
vkd3d-shader: Go through d3dbc/tpf bytecode when targeting d3d-asm from HLSL.
vkd3d-shader/ir: Turn vsir register allocation into a proper vsir_transform() pass.
tests/hlsl: Add additional half declaration tests.
vkd3d-shader/hlsl: Introduce a compatibility flag to handle half globals as float.
tests/hlsl: Add tests with half arithmetic expressions.
vkd3d-shader/hlsl: Support half arithmetic operations in shader model 4 and 5.
vkd3d-shader/ir: Introduce struct vsir_compile_info.
vkd3d-shader/spirv: Trace the available SPIR-V extensions.
vd3d-shader/hlsl: Check "is_uniform" instead of "!semantic->name" in ctab_write_uniforms().
vkd3d-shader/hlsl: Handle allocation failures on copy_propagation_push_scope().
vkd3d-shader/ir: Remove an unused iterator variable in instruction_array_normalise_hull_shader_control_point_io().
vkd3d-dxbc: Remove the unused "ptr" variable from dump_data().
tests/hlsl: Test temp copies of uniforms with backcompat.
tests/hlsl: Test conditional per-component writes to temp copies of uniforms with backcompat.
vkd3d-shader/hlsl: Introduce a Dead Store Elimination pass.
vkd3d-shader/hlsl: Use vkd3d_ptr_compare() in copy_propagation_var_def_compare().
tests/hlsl: Merge the writemask-assignop tests into a single file.
vkd3d-shader/hlsl: Check that dse_stores_array is not empty before sorting (ubsan).
tests/hlsl: Add a test for per-component DSE.
tests/hlsl: Add specific DSE and per-component DSE tests.
vkd3d-shader/hlsl: Only mark used components on swizzled loads in DSE.
tests/hlsl: Test multiple calls to the same function as arguments of another.
vkd3d-shader/hlsl: Place the split load next to the load itself on split_copy().
Giovanni Mascellani (46):
tests/d3d12_invalid_usage: Drop some tests for which native behaviour has changed.
ci: Run the Windows tests with the latest Agility SDK.
vkd3d: Parse amplification and mesh shader pipeline subobjects.
tests/hlsl: Test a few simple mesh pipelines.
tests/hlsl: Test normalized pixel formats in more configurations.
tests/hlsl: Test loading from UNORM and UINT textures.
tests/d3d12: Skip test_hull_shader_relative_addressing() on Windows AMD.
tests/hlsl: Tweak a f16 test in arithmetic-float-uniform.shader_test.
tests/hlsl: Skip a test in float-comparison.shader_test on Windows AMD.
tests/hlsl: Account for a bug in switch.shader_test on Windows AMD.
tests/d3d12: Do not skip the "continue" test any more.
tests/d3d12: Skip the "dadd" and "dmovc" on all Windows drivers.
tests/d3d12: Tweak the shader cache tests so that they pass in other environments.
tests/hlsl: Account for a bug on Windows NVIDIA d3d11 in minimum-precision.shader_test.
tests/hlsl: Account for a bug on Windows AMD in cast-64-bit.shader_test.
tests/hlsl: Make a test in non-const-indexing.shader_test more robust.
tests/hlsl: Account for a bug on Windows AMD in non-const-indexing.shader_test.
tests/hlsl: Test RestartStrip() and maxvertexcount() in geometry shaders.
tests/hlsl: Account for some bugs on Windows AMD d3d11 in tgsm.shader_test.
tests/hlsl: Account for a bug on Windows AMD d3d12 in shader-interstage-interface.shader_test.
tests/hlsl: Account for a bug on Windows AMD in mesh.shader_test.
tests/hlsl: Add more mesh and amplification shader tests.
tests/hlsl: Account for a bug on Windows AMD d3d9 in uninitialized-varyings.shader_test.
tests/shader_runner_d3d12: Create X32G8X24 SRVs as views of D32S8X24 textures.
tests/hlsl: Account for a bug on Windows AMD d3d9 in shader-point-size.shader_test.
tests/hlsl: Account for a bug on Windows AMD in mesh.shader_test.
tests/hlsl: Account for a bug on Windows AMD in clip-planes.shader_test.
tests/d3dbc: Use b8g8r8a8-unorm textures for d3d9 tests.
tests/hlsl: Test loading from a swizzled texture.
tests/hlsl: Test GatherCmp{Green,Blue,Alpha}() with a SRV swizzle.
tests/d3dbc: Account for a bug on Windows AMD d3d9 in bump.shader_test.
tests/d3dbc: Avoid testing a negative loop counter in rep.shader_test.
tests/hlsl: Remove outdated comment in wave-reconvergence.shader_test.
tests/hlsl: Account for the Windows NVIDIA behaviour in wave-reconvergence.shader_test.
tests/hlsl: Account for a bug on recent Windows d3d9 in fog.shader_test.
tests/hlsl: Test type sizes and alignments in the amplification shader payload.
tests/hlsl: Test field alignment when composing structures and arrays.
tests/hlsl: Test calling DispatchMesh() either never or more than once.
vkd3d-shader/spirv: Actually use the "mode" parameter in spirv_compiler_emit_denormal_mode().
vkd3d: Enable the VK_KHR_shader_float_controls extension.
tests/d3d12: Print DLL versions when running tests on Windows.
tests/d3d12: Test copying between compressed textures of different sizes.
tests/d3d12: Check all blocks in test_copy_block_compressed_texture().
tests/d3d12: Test copying from small mipmaps of compressed textures.
tests/hlsl: Test the "globallycoherent" keyword.
tests/hlsl: Run RWTexture basic tests for shader model 6.0 too.
Henri Verbeet (167):
vkd3d-shader/glsl: Use vkd3d_shader_find_descriptor().
vkd3d-shader/ir: Remove VSIR_OP_DCL_RESOURCE_RAW instructions.
vkd3d-shader/ir: Remove VSIR_OP_DCL_RESOURCE_STRUCTURED instructions.
vkd3d-shader/ir: Remove VSIR_OP_DCL_UAV_RAW instructions.
vkd3d-shader/ir: Remove VSIR_OP_DCL_UAV_STRUCTURED instructions.
vkd3d-shader/ir: Remove VSIR_OP_DCL_VERTICES_OUT instructions.
vkd3d-shader/glsl: Implement VSIR_OP_STORE_RAW.
vkd3d-shader/glsl: Implement VSIR_OP_LD_RAW.
vkd3d-shader/glsl: Ignore VKD3DSGF_ENABLE_RAW_AND_STRUCTURED_BUFFERS in shader_glsl_handle_global_flags().
vkd3d-shader/glsl: Implement VSIR_OP_STORE_STRUCTURED.
vkd3d-shader/glsl: Implement VSIR_OP_LD_STRUCTURED.
vkd3d-shader/msl: Ignore VKD3DSGF_ENABLE_UP_TO_64_UAVS in msl_generator_generate().
vkd3d-shader/ir: Rename enum vkd3d_shader_register_type to enum vsir_register_type.
vkd3d-shader/glsl: Output vsir register type names in error messages.
vkd3d-shader/glsl: Output vsir data type names in error messages.
vkd3d-shader/glsl: Output vsir dimension names in error messages.
tests/shader_runner_gl: Require GL_EXT_shader_image_load_formatted for typed UAV loads without format.
tests/d3dbc: Add a test for partially initialised I/O registers.
vkd3d-shader/ir: Handle partially initialised I/O registers in vsir_program_remap_output_signature().
vkd3d-utils: Introduce D3DReflectVKD3D().
tests/hlsl_d3d12: Slightly modify the shader model 5.1 shader in test_reflection().
tests/hlsl_d3d12: Get rid of the "is_todo" parameter to check_signature_element_().
tests/hlsl_d3d12: Run test_reflection() with multiple d3dcompiler versions.
tests/hlsl_d3d12: Run test_default_values_reflection() with multiple d3dcompiler versions.
tests/hlsl_d3d12: Run test_signature_reflection() with multiple d3dcompiler versions.
tests/hlsl: Add some tests for invalid I/O semantics.
vkd3d-shader/hlsl: Disallow user-defined pixel shader outputs in shader model 4+ target profiles.
vkd3d-shader/hlsl: Do not validate unused semantic registers in shader model 1-3 target profiles.
vkd3d-shader/hlsl: Take the kind of input/output into account in sm1_usage_from_semantic_name().
vkd3d-shader/hlsl: Do not allow "sv_target" in sm1_usage_from_semantic_name().
vkd3d-utils: Support the ID3D10ShaderReflection interface in D3DReflectVKD3D().
vkd3d-utils: Support the ID3D11ShaderReflection interfaces in D3DReflectVKD3D().
vkd3d-shader/ir: Rename struct shader_signature to struct vsir_signature.
vkd3d-shader/ir: Rename struct signature_element to struct vsir_signature_element.
vkd3d-utils: Support the ID3D10ShaderReflection1 interface in D3DReflectVKD3D().
vkd3d-shader/ir: Get rid of the "input_control_point_count" parameter to control_point_normaliser_emit_hs_input().
vkd3d-shader: Get the output primitive directly from the vsir program in vsir_program_scan().
vkd3d-shader: Get the tessellator partitioning directly from the vsir program in vsir_program_scan().
tests/hlsl_d3d12: Release the shader blobs on error paths in the reflection tests.
tests/hlsl_d3d12: Add some basic thread group size reflection tests.
vkd3d-utils: Require version 40 for compute shader support.
vkd3d-utils: Implement d3d12_reflection_GetThreadGroupSize().
vkd3d-dxbc: Implement updating section data.
vkd3d-shader/ir: Remove VSIR_OP_DCL_INPUT_CONTROL_POINT_COUNT instructions.
vkd3d-shader/ir: Remove VSIR_OP_DCL_OUTPUT_CONTROL_POINT_COUNT instructions.
vkd3d-shader/ir: Remove VSIR_OP_DCL_TESSELLATOR_OUTPUT_PRIMITIVE instructions.
vkd3d-shader/ir: Remove VSIR_OP_DCL_TESSELLATOR_PARTITIONING instructions.
vkd3d-utils: Introduce D3D10ReflectShader().
tests/hlsl_d3d12: Add some STAT reflection tests.
vkd3d-utils: Parse STAT sections in d3d12_reflection_init().
vkd3d-shader/hlsl: Use VSIR_DATA_U32 as structured buffer resource data type.
vkd3d-shader/ir: Validate that the resource data type for raw view descriptors is VSIR_DATA_U32.
vkd3d-shader/ir: Validate that the resource data type for structured view descriptors is VSIR_DATA_U32.
vkd3d-shader/spirv: Use spirv_compiler_error() in image_format_for_image_read().
vkd3d-shader/glsl: Implement support for the VSIR_REGISTER_LOCALTHREADINDEX register.
vkd3d-shader/ir: Rename struct vkd3d_shader_scan_descriptor_info1 to struct vsir_descriptor_info.
vkd3d-shader/ir: Store the array capacity inside struct vsir_descriptor_info.
vkd3d-shader/ir: Rename struct vkd3d_shader_descriptor_info1 to struct vsir_descriptor.
vkd3d-utils: Implement d3d12_reflection_GetMovInstructionCount().
vkd3d-utils: Implement d3d12_reflection_GetMovcInstructionCount().
vkd3d-utils: Implement d3d12_reflection_GetConversionInstructionCount().
vkd3d-utils: Implement d3d12_reflection_GetBitwiseInstructionCount().
vkd3d-utils: Implement d3d12_reflection_GetGSInputPrimitive().
vkd3d-utils: Implement d3d12_reflection_IsSampleFrequencyShader().
vkd3d-shader/spirv: Always load the UAV data as VSIR_DATA_U32 in spirv_compiler_emit_store_uav_raw_structured().
vkd3d-shader/glsl: Implement support for the VSIR_REGISTER_THREADGROUPID register.
vkd3d-shader/ir: Store the formatting flags in struct vsir_compile_info.
vkd3d-shader/ir: Store the "strip_debug" flag in struct vsir_compile_info.
vkd3d-shader/ir: Store the "ssbo_uavs" flag in struct vsir_compile_info.
vkd3d-shader/ir: Store the "uav_read_without_format" flag in struct vsir_compile_info.
vkd3d-shader/ir: Store the "write_tess_geom_point_size" flag in struct vsir_compile_info.
vkd3d-shader/glsl: Implement VSIR_OP_SYNC.
vkd3d-utils: Avoid leaking "name" on error paths in d3d12_type_init().
vkd3d-utils: Avoid leaking fields[] on error paths in d3d12_type_init().
vkd3d-utils: Avoid leaking "name" on error paths in d3d12_variable_init().
vkd3d-utils: Avoid leaking the default value on error in d3d12_variable_init().
vkd3d-utils: Avoid leaking "name" on error paths in d3d12_buffer_init().
vkd3d-shader/glsl: Implement support for the VSIR_REGISTER_LOCALTHREADID register.
vkd3d-shader/ir: Store the default matrix packing order in struct vsir_compile_info.
vkd3d-shader/ir: Store the backward compatibility flags in struct vsir_compile_info.
vkd3d-shader/ir: Store the fragment coordinate origin in struct vsir_compile_info.
vkd3d-shader/ir: Store the feature flags in struct vsir_compile_info.
vkd3d-shader/ir: Store the "child_effect" flag in struct vsir_compile_info.
vkd3d-shader/glsl: Implement VSIR_OP_ATOMIC_IADD.
tests/hlsl_d3d12: Avoid leaking the "errors" blobs in test_preprocess(). (Valgrind)
vkd3d-shader/ir: Store the "warn_implicit_truncation" flag in struct vsir_compile_info.
vkd3d-shader/ir: Store the "include_empty_buffers" flag in struct vsir_compile_info.
vkd3d-shader/ir: Store the denormal mode overrides in struct vsir_compile_info.
vkd3d-shader/hlsl: Add DEPTHOUT to io_dcls when outputting depth.
vkd3d-utils: Avoid leaking variables[] on error paths in d3d12_buffer_init().
vkd3d-utils: Avoid leaking buffers[] on error paths in parse_rdef().
vkd3d-utils: Avoid leaking bindings[] on error paths in parse_rdef().
vkd3d-utils: Avoid leaking buffers[] on error paths in d3d12_reflection_init().
vkd3d-utils: Avoid leaking bindings[] on error paths in d3d12_reflection_init().
vkd3d-shader/hlsl: Only consider used uniforms when updating "flat_constant_count" in generate_vsir_descriptors().
vkd3d-shader/ir: Remove VSIR_OP_DCL_TGSM_RAW instructions.
vkd3d-shader/ir: Remove VSIR_OP_DCL_TGSM_STRUCTURED instructions.
vkd3d-shader/glsl: Implement TGSM loads and stores.
vkd3d-shader/glsl: Handle TGSM in shader_glsl_atomic().
tests: Enable colour output when outputting to a colour capable tty.
tests/d3dbc: Add some tests for sub instructions.
vkd3d-shader/d3dbc: Lower VSIR_OP_SUB instructions.
vkd3d-shader/glsl: Implement VSIR_OP_IMM_ATOMIC_CMP_EXCH.
tests/d3dbc: Add tests for source/destination modifiers.
vkd3d-shader/d3dbc: Lower destination shift modifiers.
vkd3d-shader/d3dbc: Lower BIAS source modifiers.
vkd3d-shader/d3dbc: Lower BIASNEG source modifiers.
vkd3d-shader/d3dbc: Lower SIGN source modifiers.
vkd3d-shader/glsl: Introduce shader_glsl_print_raw_structured_address().
vkd3d-shader/glsl: Try to simplify the address in shader_glsl_print_raw_structured_address().
vkd3d-dxbc: Support colour output in the Win32 build.
vkd3d-shader/d3dbc: Lower SIGNNEG source modifiers.
vkd3d-shader/d3dbc: Lower X2 source modifiers.
vkd3d-shader/d3dbc: Lower X2NEG source modifiers.
vkd3d-shader/d3dbc: Lower COMP source modifiers.
tests/d3dbc: Add some tests for break_cmp instructions.
vkd3d-shader/d3dbc: Lower VSIR_OP_BREAKC instructions.
vkd3d-compiler: Support colour output in the Win32 build.
tests/hlsl: Test f32 to i64/u64 conversion.
vkd3d-shader/spirv: Handle 64-bit destinations in spirv_compiler_emit_ftou().
vkd3d-shader/dxil: Generate signed destination operands for FTOI instructions.
vkd3d-shader/spirv: Handle 64-bit destinations in spirv_compiler_emit_ftoi().
tests: Support colour output in the Win32 build.
tests/hlsl_d3d12: Add ID3D12ShaderReflection_GetResourceBindingDescByName() tests.
vkd3d-utils: Implement d3d12_reflection_GetResourceBindingDescByName().
tests/hlsl_d3d12: Add ID3D12ShaderReflection_GetConstantBufferByName() tests.
vkd3d-utils: Implement d3d12_reflection_GetConstantBufferByName().
tests/hlsl_d3d12: Add ID3D12ShaderReflectionConstantBuffer_GetVariableByName() tests.
vkd3d-utils: Implement d3d12_buffer_GetVariableByName().
vkd3d-utils: Parse the creator string in parse_rdef().
vkd3d-utils: Validate the RD11 field size in parse_rdef().
vkd3d-shader/hlsl: Only use "type" when initialised in generate_signature_entry(). (Valgrind)
tests/hlsl_d3d12: Add ID3D12ShaderReflection_GetVariableByName() tests.
vkd3d-utils: Implement d3d12_reflection_GetVariableByName().
tests/hlsl_d3d12: Add ID3D12ShaderReflectionType_GetMemberTypeName() tests.
vkd3d-utils: Implement d3d12_type_GetMemberTypeName().
tests/hlsl_d3d12: Add ID3D12ShaderReflectionType_GetMemberTypeByName() tests.
vkd3d-utils: Implement d3d12_type_GetMemberTypeByName().
vkd3d-shader/ir: Free the tgsms[] array in vsir_program_cleanup(). (Valgrind)
vkd3d-shader/glsl: Handle swizzles on scalar sources in shader_glsl_print_src().
vkd3d-shader/dxil: Generate signed source operands for FIRSTBIT_SHI instructions.
tests/hlsl_d3d12: Add ID3D12ShaderReflectionVariable_GetBuffer() tests.
vkd3d-utils: Initialise the "buffer" field in d3d12_variable_init().
vkd3d-utils: Handle "null_variable" in d3d12_variable_GetBuffer().
vkd3d-common: Add missing braces to the definition of VKD3D_MUTEX_INITIALIZER.
tests/hlsl: Run bitwise.shader_test on more shader models.
vkd3d-shader/glsl: Implement VSIR_OP_COUNTBITS.
vkd3d-shader/glsl: Implement VSIR_OP_FIRSTBIT_LO.
vkd3d-shader/ir: Lower FIRSTBIT_HI and FIRSTBIT_SHI instructions.
vkd3d-shader/glsl: Implement VSIR_OP_ILOG2.
vkd3d-shader/glsl: Implement VSIR_OP_ULOG2.
vkd3d-utils: Handle NULL "desc" pointers in d3d12_reflection_GetDesc().
vkd3d-utils: Handle NULL "desc" pointers in d3d12_reflection_GetResourceBindingDesc().
tests/hlsl_d3d12: Test compile flags reflection.
vkd3d-utils: Parse the compile flags in parse_rdef().
tests/hlsl_d3d12: Test invalid blob reflection.
vkd3d-utils: Return the expected error codes from D3DReflectVKD3D() for invalid DXBC blobs in version >= 43.
vkd3d-utils: Handle NULL "data" pointers with non-zero "data_size" in d3d12_reflection_init().
vkd3d-shader/ir: Lower VSIR_OP_FIRSTBIT_SHI to VSIR_OP_FIRSTBIT_HI for the MSL target.
tests/hlsl_d3d12: Test ID3D12ShaderReflectionType_IsEqual().
vkd3d-utils: Implement d3d12_type_IsEqual().
vkd3d-shader/ir: Slightly simplify vsir_program_lower_clz().
tests/hlsl_d3d12: Add a basic interface reflection test.
vkd3d-shader/ir: Allow indirect addressing of descriptor IDs.
vkd3d-shader/tpf: Clone indirect indices of descriptor operands in shader_sm4_read_param().
vkd3d-shader/ir: Allow VSIR_REGISTER_FUNCTIONBODY label operands.
vkd3d-utils: Do not fail when "rd11->zero" is non-zero in parse_rdef().
Matteo Bruni (1):
vkd3d-utils: NULL-check the standard include initial filename.
Nikolay Sivov (5):
vkd3d-shader/fx: Support writing numeric state entries in passes for fx_2_0.
vkd3d-shader/fx: Use the global variable list instead of the externs list when writing fx_2_0 parameters.
vkd3d-shader/fx: Add support for writing shader object initializers for fx_2_0.
vkd3d-shader/fx: Use the globals list when writing fx_4+ objects.
vkd3d-shader/fx: Use the globals list when writing buffers.
Simon McVittie (2):
demos: Use STT_OBJECT instead of @object in the DEMO_ASM_OBJECT_TYPE macro.
tests/d3d12: Mark some NaN corner-cases as expected to fail on ppc64el.
Victor Chiletto (2):
tests/d3d12: Test D3D_COMPILE_STANDARD_FILE_INCLUDE with absolute paths.
tests/d3d12: Test D3D_COMPILE_STANDARD_FILE_INCLUDE with NULL paths.
```
1
0
The Wine development release 11.16 is now available.
What's new in this release:
- Mono engine updated to version 11.3.0, including ARM64 support.
- Hardware video decoding using VA-API.
- Improved exception handling on ARM64EC.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/11.x/wine-11.16.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-11.16/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 11.16 (total 35):
- #19160 Orly's Draw-A-Story demo crashes on startup (dmDriverExtra is not initialized)
- #26040 Odell Down Under Demo: Pagefault on read access when moving fish around the map
- #29451 pmd85 emulator - toolbar icons missing
- #32783 Siemens Automation License Manager installer (part of SIMATIC STEP 7 Lite SP4) fails to start ALM service (Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider missing)
- #33600 Klik and Play crash on modify / create game option
- #35732 Adobe CC (Creative Cloud) installer crashes inside msxml3
- #40526 "Pettersson und Findus" does not start
- #40945 Post provider setup of WMI core 1.5 installer crashes in wbemprox
- #42062 silhouette studio : installation frozen
- #42226 No ingame sfx audio when CD Audio playing with builtin dsound in Ignition
- #46392 Commandos: Behind Enemy Lines videos aren't played
- #46559 Visual C++ Build Tools 2015 hangs on install
- #47785 CERT_CHAIN_POLICY_IGNORE_NOT_TIME_VALID_FLAG not taken into account
- #49792 pfx import does not works
- #49837 Just Grandma and Me (win16) softlock. Win16Mutex wait timed out
- #50824 ISdone.dll error 5, something releated to insufficient virtual memory
- #52201 Backpacker crashes on launch
- #56565 Command and Conquer 3 Tiberium Wars installer crashes
- #56887 Total Commander ftps connection (TLS1.2)
- #57669 Suspicious behavior of rundll32.exe
- #58530 regedit /e should exit silently on failure
- #58698 Application goes into an infinite loop under new wow64 but works okay under old wow64
- #59642 Stratego (1997): Jittery mouse pointer / cursor
- #59726 Syscall emulation on Linux using Syscall User Dispatch broken with glibc < 2.34
- #59757 SteelSeries GG 110.0 crashes on startup in .NET System.Security.Cryptography.X509Certificates.StorePal.Export
- #59977 Acrobat Reader DC locks up opening a PDF directly with "wine some.pdf"
- #60029 Broken cursor in Star Citizen inventory + terminal menu
- #60125 Yabridge overlaping windows on some WM produce dead zone for input
- #60141 CertCreateSelfSignCertificate with default parameters makes insecure RSA 512 cert
- #60142 CertGetCertificateContextProperty does not support CERT_SIGN_HASH_CNG_ALG_PROP_ID
- #60152 WineWayland driver doesn't work anymore in Wine 11.15
- #60158 Steam fails to launch
- #60162 WPF apps crash on startup (x86 only?)
- #60164 WebView2 mouse hit testing is vertically offset under X11
- #60198 X11 fullscreen borderless non-decorated window's surface offset by Wine's window borders
### Changes since 11.15:
```
Alex Henrie (2):
riched20: Set value to 0 in TextPara_GetAlignment.
krnl386: Respect the MOVEABLE flag in AllocResource16.
Alexandre Julliard (23):
ntdll: Export the helper function to allocate object attributes.
server: Use standard object attributes for window stations and desktops.
configure: Make the non-PE build an error unless --without-mingw is specified.
user32: Pass valid security descriptors when creating user objects.
user32: Implement Get/SetUserObjectSecurity().
server: Don't check access rights on newly-created desktop.
server: Set the object name parent also for desktops.
server: Use the root directory as winstation handle in create_desktop.
ntdll: Ignore dlls of the wrong architecture during bootstrap.
ntdll: Force running wineboot.exe with the native architecture.
win32u: Force running explorer.exe with the native architecture.
wineboot: Force running services.exe and rundll32.exe with the native architecture.
server: Return correct status on overflow in desktop_get_full_name().
wow64: Enforce a valid low limit in extended memory parameters.
ntdll: Don't try to allocate past the specified limits in map_free_area().
ntdll: Reserve some space for top-down allocation in large address aware mode.
ntdll: Avoid overflow in NtQueryVirtualMemory() in old wow64 mode.
ntdll: Set a 32-bit limit on cross-process allocations in old wow64 mode.
kernel32/tests: Move the large page test to virtual.c.
kernelbase: Fetch the large page minimum size from the user shared data.
kernel32/tests: Add some tests for MEM_PHYSICAL and MEM_LARGE_PAGES.
ntdll: Add parameter checks for MEM_LARGE_PAGES in NtAllocateVirtualMemory().
ntdll: Support the MEM_PHYSICAL flag in NtAllocateVirtualMemory().
Alistair Leslie-Hughes (1):
wintrust: Add parameter check in WTHelperGetProvCertFromChain.
Aric Stewart (2):
coreaudio: Report USB device PKEY_Device_InstanceId.
mmdevapi: Propagate the hardware Device_InstanceId.
Bernhard Übelacker (2):
winhttp: Avoid heap-use-after-free with WINHTTP_OPTION_SERVER_CBT.
wow64win: Add structure conversions in wow64_NtUserGetPointerInfoList.
Brendan McGrath (18):
windows.gaming.input: Allow gamepad added callback to be registered before initializing providers.
quartz/tests: Add test stub for color space converter.
quartz/tests: Add test for filter registration.
quartz/tests: Add interface tests for colorconv.
quartz/tests: Add aggregation test.
quartz/tests: Add enum pin test.
quartz/tests: Add find pin test.
quartz/tests: Add pin info test.
quartz/tests: Add media types test.
quartz/tests: Add enum media types test.
quartz/tests: Add unconnected filter state test.
quartz/tests: Add connect pin test.
quartz/tests: Add sink allocator test.
quartz/tests: Add filter state test.
quartz/tests: Add sample processing test.
quartz/tests: Test content of image.
quartz/tests: Test dynamic format change.
quartz/tests: Add streaming events test.
Brendan Shanks (3):
ntdll: NtQuerySystemInformation(SystemProcessorBrandString) is only supported on i386 and x86_64.
ntdll: Populate the CPU name and vendor on ARM64 macOS.
ws2_32/tests: Remove faulty inet_addr() test.
Carl-Friedrich Braun (2):
rsaenh: Use SymCryptAesKeyCopy() when duplicating AES keys.
rsaenh/tests: Test that a duplicated AES key encrypts identically.
Conor McCarthy (11):
bcrypt/tests: Test non-HMAC BCryptHash() with a secret.
bcrypt/tests: Test BCryptDeriveKey() with secret buffers.
bcrypt: Return INVALID_PARAMETER from BCryptHash() if the input secret is not used.
bcrypt: Handle prepended secret buffers in BCryptDeriveKey() for KDF_HASH.
wbemdisp/tests: Test ISWbemObjectPath::DisplayName.
wbemdisp/tests: Test ISWbemObject set enumeration.
wbemdisp: Handle null output pointer in enumvar_Next().
wbemdisp: Add ISWbemObjectPath stub implementation.
wbemdisp: Partially implement get ISWbemObjectPath::DisplayName.
wbemdisp: Implement ISWbemObject::GetTypeInfo().
wbemdisp: Return null object on failure of QueryInterface().
Deep Agrawal (2):
kernelbase: Implement ReadConsoleInputEx.
kernelbase: Reimplement PeekConsoleInput and ReadConsoleInput on top of ReadConsoleInputEx.
Elizabeth Figura (25):
xaudio2: Release the correct lock on failure in CreateSourceVoice().
wined3d: Introduce a stub VA decoder backend.
wined3d: Allocate the bitstream on CPU for the VA backend.
win32u: Enable VK_EXT_physical_device_drm and VK_EXT_external_memory_dma_buf.
wined3d: Query VA for H.264 support.
wined3d: Create a VA decoding session.
wined3d: Share VA surfaces with Vulkan.
wined3d: Implement VA H.264 decoding.
mountmgr: Pass the device type to IoCreateDevice().
mountmgr: Pass characteristics to IoCreateDevice().
mountmgr: Rename the "serial" field of struct disk_device to "disk_serial".
mountmgr: Consistently use "unix_device" for variables representing the Unix block device path.
mountmgr: Move unix_mount to struct volume.
mountmgr: Document the difference between struct disk_device and struct volume.
mountmgr: Rename harddisk_* to disk_*.
mountmgr.sys: Handle IRP_MJ_CREATE.
ndis: Handle IRP_MJ_CREATE.
nsiproxy: Handle IRP_MJ_CREATE.
winebth: Handle IRP_MJ_CREATE.
mouhid: Handle IRP_MJ_CREATE.
wined3d: Pass a VkImageCreateInfo to wined3d_context_vk_create_image().
d3d11: Plumb resource sharing flags to wined3d.
d3d11: Validate shared resource flags.
wined3d: Make WINED3D_TEXTURE_GENERATE_MIPMAPS a usage flag.
wined3d: Try to perform CPU copy in wined3d_texture_update_sub_resource().
Eric Pouech (2):
cmd: Revert AI generated code.
widl: Handle boolean as template parameter.
Esme Povirk (2):
appwiz.cpl: Move architecture to addon_info_t.
mscoree: Update Wine Mono to 11.3.0.
Francisco Casas (1):
wined3d: Don't call vulkan functions with 0 attachments on wined3d_context_vk_update_blend_state().
Gabriel Ivăncescu (1):
mshtml: Don't leak the attribute after forwarding in setAttributeNode.
Hans Leidekker (1):
crypt32: Support CertGetCertificateContextProperty(CERT_SIGN_HASH_CNG_ALG_PROP_ID).
Henri Verbeet (1):
d3dcompiler_46: Return E_NOINTERFACE from D3DReflect() for unsupported interfaces.
Hugo Osvaldo Barrera (1):
winex11: Fix use-after-free in GL_EXTENSIONS string.
Ivan Ivlev (9):
comctl32/tests: Test wrapping for fixed size toolbar and autosized buttons.
comctl32/toolbar: Add TOOLBAR_AutoSizeButtonWidth from LayoutToolbar as a separate function.
comctl32/toolbar: Use TOOLBAR_AutoSizeButtonWidth in WrapToolbar.
comctl32/toolbar: Remove redundant toolbar wrapping logic.
ntdll/tests: Test NtAllocateVirtualMemory user address limit.
ntdll/tests: Test NtMapViewOfSection user address limit.
ntdll/tests: Test NtAllocateVirtualMemoryEx user address limit.
ntdll/tests: Test NtMapViewOfSectionEx user address limit.
ntdll: Validate virtual memory ranges against the user address limit.
Jacek Caban (7):
winegcc: Disable safeseh by default.
ntdll: Fix CONTEXT_ARM64_X18 handling when setting another thread's context.
ntdll: Move KiUserEmulationDispatcher setup to syscall dispatcher exit code.
ntdll: Setup KiUserEmulationDispatcher in usr1_handler when needed.
ntdll: Set InSimulation before returning to KiUserEmulationDispatcher from the kernel side.
ntdll: Don't use entry thunk context in RtlRaiseException.
ntdll: Preserve exception flags when converting between x64 and arm64 context flags.
Ken Sharp (3):
regedit: /e should exit silently if key not found.
ntdll: Remove debug_init declaration.
ntdll: Avoid sign extension when parsing MaxVersionTested.
Matteo Bruni (1):
win32u: Fix get_locale_data() table entry lookup.
Nikolay Sivov (19):
oleaut32/tests: Add a test for Invoke() with typeinfo from CreateDispTypeInfo().
oleaut32/typelib: Make it possible to Invoke() through COCLASS type.
msxml3: Remove commented out leftover line.
msxml3/tests: Add one more test for document dirty state.
msxml3/tests: Add some tests for supported interfaces for XMLHTTP objects.
comctl32/tests: Add more tests for TCM_SETCURFOCUS.
comctl32/tests: Remove trace noise from the Tab tests.
comctl32/tab: Ignore negative index TCM_SETCURFOCUS for TCS_BUTTONS controls.
comctl32/tests: Add a Tab test for switching focus from -1 value.
comctl32/tab: Fix switching focus from unset state.
comctl32/tab: Update item pressed state on focus change.
d3d10/tests: Add some state block capture tests with disabled fields.
d3d10/stateblock: Fix mask checks for byte-sized fields.
d3dx10/sprite: Check for the Begin/End state in affected methods.
d3dx10/tests: Add some tests for the sprite state saving feature.
d3dx10/sprite: Partially implement state restore functionality.
d3dx10/sprite: Collect sprites on DrawSpritesBuffered().
include: Add some matrix functions prototypes to d3dx10math.h.
d3dx10/tests: Add some sprites rendering tests.
Paul Gofman (20):
ntdll: Implement NtQuerySystemInformation( SystemNumaProcessorMap ).
kernelbase: Implement GetNumaHighestNodeNumber().
kernel32: Implement GetNumaProcessorNode[Ex]().
kernel32: Add FIXME to GetNumaProximityNode() stub.
kernelbase: Implement GetNumaNodeProcessorMask[Ex]().
kernelbase: Add FIXME to GetNumaProximityNodeEx().
ntdll/tests: Remove spurious pointer advance in test_query_numa_map().
ntdll: Check iosb for FSCTL_GET_OBJECT_ID in open_dll_file().
quartz/tests: Add tests for implicit fullscreen support by filter graph.
quartz: Implement BaseControlWindowImpl_GetRestorePosition().
quartz: Introduce fullscreen mode emulation in filtergraph.
quartz: Implement entering and leaving emulated fullscreen mode.
ntdll: Add WAYLAND_DISPLAY to ignored variables list.
msvcrt: Introduce asm wrapper for _isatty on x64.
winhttp: Support WINHTTP_QUERY_FLAG_NUMBER64 with WINHTTP_QUERY_CONTENT_LENGTH.
msvcrt: Always set WX_TEXT flag when importing std handles.
msvcrt: Initialize std handles in a loop in msvcrt_init_io().
msvcrt: Don't update system std handles in msvcrt_init_io().
msvcrt: Also inherit WX_ATEOF and WX_READNL attributes.
ntdll: Treat 'reached_thread_count > total_thread_count' the same as equal in RtlBarrier().
Piotr Caban (18):
include: Add SECPKG_CALL_* definitions.
secur32: Don't convert authentication identity in lsa_AcquireCredentialsHandleA.
secur32: Handle memory allocated with lsa_AllocateClientBuffer in FreeContextBuffer.
msv1_0: Use GetCallInfo to obtain thread and process id.
msv1_0: Fix client buffer handling in ntlm_SpQueryCredentialsAttributes.
msv1_0: Fix client buffer handling in ntlm_SpQueryContextAttributes.
kerberos: Handle SEC_WINNT_AUTH_IDENTITY_EX in SpAcquireCredentialsHandle.
kerberos: Use LSA_SECPKG_FUNCTION_TABLE to call Lsa functions.
kerberos: Fix client buffer handling in kerberos_SpQueryContextAttributes.
secur32: Pass unmodified authentication data from nego_SpAcquireCredentialsHandle().
msv1_0: Fix auth_data client buffer handling in ntlm_SpAcquireCredentialsHandle.
kerberos: Fix auth_data client buffer handling in kerberos_SpAcquireCredentialsHandle.
msv1_0: Map SecBuffer data before accessing it in ntlm_SpInitLsaModeContext and ntlm_SpInitLsaModeContext.
kerberos: Map SecBuffer data before accessing it in kerberos_SpInitLsaModeContext and kerberos_SpAcceptLsaModeContext.
secur32: Initialize user mode handle in lsa_InitializeSecurityContextW.
secur32: Initialize user mode handle in lsa_AcceptSecurityContext.
secur32: Don't access Lsa mode data in negotiate user mode functions.
msv1_0: Don't access Lsa mode data in user mode functions.
Ralf Habacker (2):
ntdll: Fix some SIMD exception codes.
ntdll/tests: Add SIMD exception test for floating point overflow operation fault.
Rémi Bernon (37):
win32u: Avoid a race condition when releasing / detaching a client surface.
win32u: Keep unused client surfaces around and reuse them if possible.
opengl32: Move wglCopyContext implementation to the PE side.
opengl32: Keep vendor / renderer strings in opengl_client_context.
opengl32: Keep context version string in opengl_client_context.
opengl32: Move debug callback / user pointers to opengl_client_context.
opengl32: Optionally return client context from get_current_context.
opengl32: Move unix-side context wrapper allocation to win32u.
win32u: Remove wgl functions that aren't doing anything.
user32/tests: Cleanup AttachThreadInput tests.
user32/tests: Test that thread input attachments are refcounted.
server: Move desktop check out of attach_thread_input.
server: Pass desktop instead of thread to create_thread_input.
server: Assume thread queues are valid in attach_thread_input.
user32/tests: Improve reparenting tests with different DPI awareness.
server: Check DPI awareness contexts when reparenting windows.
server: Don't change DPI awareness context when reparenting.
win32u: Avoid calling monitor_dpi_from_rect when creating the desktop window.
server: Return the visible rect from get_window_rectangles request.
server: Use the receiving window thread for set_window_rect_visible.
opengl32: Set glTable before calling init_client_context.
win32u: Allocate a proper opengl_context struct for internal contexts.
win32u: Use toplevel visible rect relative position for client surfaces.
win32u: Latch the client surface sizes in the opengl_drawable struct.
opengl32: Initialize the scissor box when making context current.
opengl32: Restore read and draw buffers when popping default FBOs.
win32u: Move framebuffer_surface_resize into framebuffer_surface_flush.
win32u: Introduce helpers to resize / destroy framebuffer attachments.
server: Update both shared input at once in assign_thread_input.
server: Update shared input keystate in assign_thread_input.
server: Update focus and active windows in assign_thread_input.
server: Detach the parent window thread input when reparenting.
server: Implement thread input attachments refcounting.
opengl32: Wrap glGetFramebufferParameteriv separately from its extensions.
opengl32: Ignore the currently bound FBO in glGetFramebufferParameterivEXT.
winex11: Use the client surface monitor rect for offscreen present.
winex11: Allow child D3D presentation on fullscreen exclusive toplevel.
Rüdiger Lenz (1):
winex11: Preserve fractional raw mouse motion.
Santino Mazza (1):
d2d1: Implement DrawSpriteBatch() command list recording.
Stefan Dösinger (3):
wined3d: Don't delay-clear backbuffers except to black.
d3d11/tests: Test delayed clear RGB/sRGB mismatch.
d3d10/tests: Synchronize test_swapchain_views with d3d11.
Thomas Portal (1):
winebus.sys: Report USB class compatible IDs.
Tobiasz Laskowski (10):
jscript/tests: Ensure windows run uses jscript.dll.
comctl32/tests: Check multicolumn listbox redraw.
user32/tests: Check multicolumn listbox redraw.
comctl32/listbox: Fix SetRedraw top item handling.
user32/listbox: Fix SetRedraw top item handling.
gdiplus/tests: Check drawimage without attributes.
gdiplus/metafile: Allow drawimage without attributes.
gdiplus/tests: Check drawimage corner colors.
gdiplus/metafile: Fix emf+ image rendering.
gdiplus/tests: Clean up converged cases.
Zhiyi Zhang (12):
jscript: Separate keyword searching from parsing.
jscript: Support Unicode characters in identifiers.
jscript/tests: Add ES3 identifier tests.
mshtml/tests: Add ES5 identifier tests.
dinput/tests: Test setting two actions with the same control identifier.
dinput: Check device GUID in init_object_app_data().
winemac.drv: Hide client_view when flushing window surfaces.
winex11.drv: Allow ConfigureRequest events when the window is maximized.
mmdevapi: Use MulDiv() to avoid rounding errors.
winecoreaudio: Set the requested period frame size when creating audio streams.
winecoreaudio: Add a helper to get device sample rate.
winecoreaudio: Return the actual Core Audio device period frame size.
```
1
0
The Wine development release 11.15 is now available.
What's new in this release:
- More KDF algorithms in BCrypt.
- Support for ARM64EC build in Mingw mode.
- More format conversions in WindowsCodecs.
- Support for local NTLM authentication.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/11.x/wine-11.15.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-11.15/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 11.15 (total 41):
- #4811 MSXML3: XMLDOMDocument cannot be queried for IStream interface
- #11595 Notepad++ versions prior to 6.9 freeze if native application changes a file it has open when not in a virtual desktop (dogfood)
- #20584 Lemmings Revolution - Crash on exit.
- #21940 Rise of Legends Demo crashes with null pointer reference in msxml3?
- #23319 cmd thinks shift.exe is an internal command
- #30239 Multiple Adobe CS6 trial installers fail to initialize, reporting 'Exception caught while getting payloads data combined. Error #1090'
- #33984 Nokia Music Player: extraneous transparent gray border in installer window
- #35727 Tom Clancy's Rainbow Six: Lockdown Demo wrong players and weapon rendering
- #37896 EM_SETPASSWORDCHAR ineffective on multiline edit controls
- #43031 popen() hangs when both stdin and stdout are closed
- #50109 conhost: write_console beep doesn't produce a beep
- #54928 exclamation mark ! in string missing if EnableDelayedExpansion
- #55198 QuickBooks SS 2009 installer crash
- #55447 wine cannot parse valid javascript
- #56399 cmd.exe's %~s modifier (short DOS path) expands to mixed short/long format
- #57967 Wrong Z-order in Browse for Folder from MPC-HC 1.7.13
- #58112 Unimplemented function KERNEL32.dll.InitializeSynchronizationBarrier
- #59073 Washed out colors in OpenGL
- #59436 Wayland/EGL: Washed-out colors caused by double sRGB conversion on default framebuffer (GL_FRAMEBUFFER_SRGB)
- #59898 Wine on aarch64 fails on linux with CONFIG_ARM64_VA_BITS=39
- #59926 CharPrevA/CharPrevExA crash on NULL start pointer (MapleStory 216150 fails to launch)
- #59970 monitor_get_dpi will get zero dmPelsWidth/dmPelsHeight in both physical/current cause divide by zero
- #59980 Final Fantasy XI Online: Unexpected Right Shift behaviour.
- #59986 Mouse misbehaves in Steam
- #59998 Multiple applications freeze (Mugen, Touhou 8, Final Burn Neo)
- #59999 Application (e. g. WinSCP) freeze after resize its window
- #60002 YNAB 4 mouse position incorrect
- #60005 Pegasus hangs and crashes
- #60012 HOTAS controlls by WinWing are not recognized and even aggresively mapped as some x-box controller.
- #60023 Dialogs in some applications are rendered at a quarter of their actual size in Wine 11.13 under certain conditions, e.g. DPI = 144 (IrfanView, WinSCP)
- #60036 WMI queries via PS Core do not work with mono.
- #60037 Fixed resolution 4:3 fullscreen apps on Wayland have their content offset and present some undefined padding area
- #60046 Multiple 32-bit applications including wine builtins (winecfg / regedit / etc.) crash under wine-11.13.
- #60051 KakaoTalk intermittently hangs
- #60057 gdiplus: GdipCloneBitmapArea drops trailing pixels for 1bpp/4bpp bitmaps with non-byte-aligned width
- #60063 shell32: SHBrowseForFolder crashes when an application passes an invalid BROWSEINFO.pidlRoot
- #60068 wminet_utils: implement GetErrorInfo()
- #60069 WordPerfect 7 installation fails
- #60088 ole32/storage: extra trailing NUL byte written into name of stream nested in a substorage (breaks MS Publisher .pub file portability)
- #60093 Unable to combine 32 bit arm with i386 emulation on aarch64
- #60120 Amnesia: Rebirth crashes after the splash screens
### Changes since 11.14:
```
Alex Dujardin (4):
windowscodecs: Add 32bppBGRA, 32bppPBGRA -> 64bppPRGBA conversion.
windowscodecs: Add 64bppPRGBA -> 128bppRGBAFloat conversion.
windowscodecs: Add 64bppPRGBA -> 128bppPRGBAFloat conversion.
windowscodecs: Remove incorrectly added bound check.
Alex Henrie (3):
kernelbase: Make Char(Next|Prev)A call Char(Next|Prev)ExA.
kernelbase: Search backwards in CharPrevExA.
user32/tests: Add tests for CharPrev(Ex)A.
Alexandre Julliard (28):
wmc: Remove an unused variable.
install: Remove an unused variable.
server: Pass unicode_str objects by value where possible.
server: Add a structure to store object initialization parameters.
server: Pass an object parameters structure to create_named_object().
server: Pass an object parameters structure to open_named_object().
server: Add an init() object operation.
server: Implement the init() operation for events.
server: Implement the init() operation for mutexes.
server: Implement the init() operation for semaphores.
server: Implement the init() operation for timers.
server: Implement the init() operation for debug objects.
server: Implement the init() operation for ALPC ports.
server: Implement the init() operation for completion objects.
server: Implement the init() operation for directories.
server: Implement the init() operation for symlinks.
server: Implement the init() operation for mailslots.
server: Implement the init() operation for named pipes.
server: Implement the init() operation for devices.
server: Implement the init() operation for sections.
server: Implement the init() operation for registry keys.
server: Implement the init() operation for reserve objects.
server: Implement the init() operation for job objects.
server: Implement the init() operation for window stations and desktops.
server: Move the name length check into open_named_object().
server: Add a helper to create an object and its handle.
symcrypt: Don't enforce any alignment in non-PE builds.
ntdll: Redirect to sysarm32 directory on ARM wow64.
Alfred Agrell (3):
vidreszr: Register the correct media types.
vidreszr: Implement CResizerDMO by piggybacking on CColorConvertDMO.
mf: Add tests for video resizer DMO.
Alistair Leslie-Hughes (5):
include: Add more defines in wdm.h.
include: Add more defines in fltkernel.h.
include: Add Flag* defines.
include: Add fltuser.h.
include: Add fltuserstructures.h.
Allan Vester (2):
bcrypt: Add tests for BCRYPT_INITIALIZATION_VECTOR.
bcrypt: Support BCRYPT_INITIALIZATION_VECTOR.
Arkadiusz Hiler (1):
winebus: Fix initial axis values for evdev gamepads.
Attila Fidan (2):
shell32/tests: Test SHBrowseForFolderW() with CSIDL values.
shell32: Accept CSIDL values in SHBrowseForFolderW().
Barath Kannan (1):
conhost: Add beep functionality to write_console.
Benoît Legat (1):
crypt32: Ignore trailing bytes past the outer SEQUENCE in PFXImportCertStore.
Bernhard Übelacker (3):
win32u: Fix off-by-one in kbdus_tables.
comctl32/tests: Add test of LM_GETIDEALSIZE being more greedy in width.
comctl32_v6: Improve LM_GETIDEALSIZE to be more greedy in width.
Billy Laws (1):
ntdll: Add RtlWow64SuspendThread semi-stub implementation.
Brendan Shanks (5):
dinput/tests: Fix tests that are faulty because of == vs ?: operator precedence.
msado15/tests: Fix typos.
advapi32/tests: Fix typo.
msvcp120/tests: Fix tests that are faulty because of == vs ?: operator precedence.
ucrtbase/tests: Fix tests that are faulty because of == vs ?: operator precedence.
Conor McCarthy (1):
mfreadwrite: Do not return NEED_MORE_INPUT from source_reader_push_transform_samples().
Dan Fraser (1):
dnsapi: Add stubs for the DNS-SD service entry points.
Dean M Greer (1):
documentation: Update macOS version.
Elizabeth Figura (11):
d3d11/tests: Shrink NV12 test textures a bit.
wined3d: Separate a surface_cpu_blt_plane() helper.
wined3d: Implement planar CPU blits.
d3d11/tests: Test planar CPU blits.
wined3d: Separate a wined3d_decoder_vk_prepare_image() helper.
wined3d: Separate a wined3d_decoder_vk_create_layered_image() helper.
wined3d: Separate a wined3d_decoder_vk_destroy_images() helper.
wined3d: Handle dynamic resizing of the H.264 stream.
win32u: Make win32u_vkDestroySwapchainKHR() static.
win32u: Do not use EXT_external_memory_dma_buf.
ntdll: Search for the library containing sa_restorer.
Eric Pouech (3):
winedbg: Support larger strings in DebugString.
winedbg: Let 'maint module' be a bit more useful.
winedbg: Support watch operation larger than 4 bytes.
Esme Povirk (2):
winedump: Use the Length from the metadata header.
winedump: Handle incremental CLR images.
Etaash Mathamsetty (1):
winewayland: Use the visible rect for toplevel rect.
Hans Leidekker (10):
bcrypt: Add support for BCRYPT_TLS1_{1,2}_KDF_ALGORITHM.
bcrypt: Support retrieving hash block length.
bcrypt: TLS1 KDF label is optional.
bcrypt: Add support for BCRYPT_HKDF_ALGORITHM.
msi: Close the RPC connection on dll unload.
secur32: Use bcrypt to hash the certificate in schan_QueryContextAttributesW().
winhttp: Support WinHttpQueryOption(WINHTTP_OPTION_SERVER_CBT).
winhttp: Stub WinHttpSetOption(WINHTTP_OPTION_ASSURED_NON_BLOCKING_CALLBACKS).
winhttp: Stub WinHttpSetOption(WINHTTP_OPTION_ENABLE_HTTP2_PLUS_CLIENT_CERT).
crypt32: Use the strong provider in CertCreateSelfSignCertificate().
Henri Verbeet (1):
wined3d: Add GPU information for AMD REMBRANDT.
Iliya Andrienko (2):
gdiplus: Fix convert_pixels() rounding down bytes.
gdiplus: Add sub-byte formats logic to GdipImageRotateFlip.
Jacek Caban (2):
winegcc: Always add Clang target options to the compiler command when building ARM64X image.
ntdll: Run native-ready .net applications as ARM64EC on ARM64.
Jannis Lübke (3):
wined3d: Don't hold wined3d cs mutex when waiting for frame latency.
d3dx9/tests: Add tests for D3DXIntersect() and D3DXIntersectSubset().
d3dx9: Implement D3DXIntersect() and D3DXIntersectSubset().
Ken Sharp (1):
po: Update English resource.
Lokesh Poovaragan (4):
jscript: Don't insert implicit semicolon after '.' in member expressions.
cmd: Handle caret escape in delayed expansion.
cmd/tests: Add tests for %~s short path modifier.
cmd: Fix %~s modifier to produce fully short paths.
Louis Lenders (7):
wminet_utils: Add NextMethod.
wminet_utils: Add EndMethodEnumeration.
wminet_utils: Add GetMethod.
wminet_utils: Add GetMethodQualifierSet.
wminet_utils: Add QualifierSet_Get.
wminet_utils: Add GetPropertyQualifierSet.
wminet_utils: Add GetErrorInfo.
Maotong Zhang (2):
comctl32/tests: Add test for RBBS_VARIABLEHEIGHT band height handling.
comctl32: Clamp child height when cyIntegral is zero.
Martin Storsjö (2):
include: Use __atomic_exchange_n on Clang.
include: Fix building for arm64ec in mingw mode.
Matteo Bruni (3):
winex11: Get rid of special handling for right shift in X11DRV_GetKeyNameText().
win32u: Don't ignore raw mouse input.
d3dx9/tests: Fix a flaky D3DXWeldVertices() test.
Nello De Gregoris (1):
ntoskrnl.exe: Add stub for KeGetCurrentIrql().
Nikolay Sivov (20):
comdlg32/filedlg: Return current path as is for CDM_GETFILEPATH if it's absolute.
ole32/storage: Update name size field on rename.
msxml3/tests: Add a test for the document stream.
msxml3/tests: Add another stream read test.
msxml3: Write out UTF-16 BOM in save().
msxml3/tests: Extend a test with multiple writing streams.
msxml3/tests: Adjust stream test XML data.
msxml3/stylesheet: Improve processor output object management.
msxml3/dom: Add IStream support for the document object.
msxml3: Remove now unnecessary workaround in save().
msxml3: Use ISequentialStream internally for save().
msxml3: Explicitly handle ISequentialStream in save().
msxml3: Add explicit messages for currently unsupported destination types in save().
comdlg32/tests: Add a CDM_SETCONTROLTEXT(edt1) test.
comdlg32: For CDM_SETCONTROLTEXT(edt1) always use current file control.
msxml3: Handle null destination object in save().
msxml3/tests: Add a test for loading from a document.
msxml3: Remove workaround when loading from a document in load().
include: Add IRequest definition.
msxml3: Explicitly check and warn about currently unsupported source types in load().
Paul Gofman (10):
winebus: Avoid spurious device recreation in process_inotify_event().
kernel32/tests: Add tests for unhandled exception filter with BeingDebugged PEB flag set.
kernel32/tests: Add tests for unhandled exception filter under debugger.
kernelbase: Query debug port instead of BeingDebugged PEB flag in UnhandledExceptionFilter().
crypt32: Avoid adding spurious line separator in encodeBase64[A/W]().
crypt32: Fix output string tracing in quote_rdn_value_to_str_w().
winhttp: Handle incorrect handle state when querying WINHTTP_OPTION_SERVER_CERT_CHAIN_CONTEXT.
winhttp: Use chain established in netconn_verify_cert() for WINHTTP_OPTION_SERVER_CERT_CHAIN_CONTEXT.
cmd/tests: Add test for console mode change.
cmd: Set console mode in node_execute().
Piotr Caban (23):
secur32/tests: Add NTLM QueryCredentialsAttributes(SECPKG_CRED_ATTR_NAMES) tests.
msv1_0: Use calloc to allocate credentials handle in ntlm_SpAcquireCredentialsHandle.
msv1_0: Add ntlm_SpQueryCredentialsAttributes stub.
msv1_0: Add ntlm_SpQueryCredentialsAttributes implementation.
msv1_0: Hide password in logs.
msv1_0: Remove FLAG_NEGOTIATE_* defines and use NTLMSSP_NEGOTIATE_* instead.
ntoskrnl: Implement IoGetRequestorProcessId.
msv1_0: Implement in-process NTLM local authentication.
msvcr120/tests: Restore exp() tests.
ucrtbase: Fix exp(NAN) handling.
msv1_0: Don't overwrite output buffer when getting session key.
include: Declare SEC_WINNT_AUTH_IDENTITY_EX2.
secur32/tests: Add SspiMarshalAuthIdentity tests.
secur32/tests: Add SspiUnmarshalAuthIdentity tests.
sspicli: Handle more auth identity formats in SspiZeroAuthIdentity.
sspicli: Handle more auth identity formats in SspiEncodeAuthIdentityAsStrings.
sspicli: Handle more auth identity formats in SspiPrepareForCredWrite.
sspicli: Change auth identity format returned by SspiEncodeStringsAsAuthIdentity.
sspicli: Use LocalAlloc/LocalFree when allocating auth identity.
sspicli: Handle more auth identity formats in SspiFreeAuthIdentity.
secur32: Implement SspiMarshalAuthIdentity() and SspiUnmarshalAuthIdentity().
secur32: Pass stub LSA_SECPKG_FUNCTION_TABLE to SpInitialize.
msv1_0: Get clients process id and thread id using LSA functions table.
Rick Rey (1):
winebus.sys: Prefer hidraw for (some) switch 1 controllers.
Rémi Bernon (10):
opengl32: Use unsigned handle entry pointer index.
opengl32: Add some missing SetLastError on invalid handles.
win32u: Use system DPI as monitor DPI for detached sources.
user32/tests: Fix monitor DPI awareness tests when system DPI isn't 96.
user32/tests: Test window DPI context and monitor DPI in CBT hooks.
user32/tests: Check child window DPI awareness and monitor changes.
win32u: Lock host window state updates when applying new state.
opengl32: Pass NULL object array pointers through.
dinput/tests: Fix incorrect GetOverlappedResult test expectation.
win32u: Pass initial monitor DPI to the window creation request.
Santino Mazza (3):
d2d1/tests: Add some tests for sprite batches.
d2d1: Implement sprite batch object methods.
cmd: Fix usage of uninitialized variable in node_build_parse.
Thomas Portal (2):
dnsapi: Implement DnsServiceConstructInstance() and DnsServiceFreeInstance().
dnsapi/tests: Add tests for DnsServiceConstructInstance().
Tobiasz Laskowski (9):
jscript: Fix String.replace with multi-digit group.
jscript: Fix internal state of RegExp.prototype.
jscript/tests: Add tests for RegExp.prototype use.
comctl32/tests: Check listbox SETTOPINDEX errors.
user32/tests: Check listbox SETTOPINDEX errors.
comctl32/listbox: Handle out-of-bounds SETTOPINDEX.
user32/listbox: Handle out-of-bounds SETTOPINDEX.
jscript: Fix zero-length regex matches.
jscript/tests: Add more tests for 0-length regex.
Tomáš Novotný (1):
winebus: Enable hidraw by default for Winwing Orion controllers.
Vibhav Pant (4):
rometadata: Implement IMetaDataImport::{EnumMembers, EnumMembersWithName}.
rometadata: Implement IMetaDataImport::FindMember.
rometadata/tests: Add tests for IMetaDataImport::{EnumCustomAttributes, GetCustomAttributeProps}.
maintainers: Add entry for WinRT Metadata.
Vlad Zahorodnii (1):
winewayland: Add support for wl_fixes.ack_global_remove.
Yuxuan Shui (4):
mfplat/tests: Test how the MPEG4 media source handles aspect ratio info.
mfreadwrite: Don't modify the `type` parameter in src_reader_SetCurrentMediaType.
mfreadwrite/tests: Test how aspect ratios are handled by the reader.
mfreadwrite: Ensure output has a 1:1 pixel aspect ratio if processing is enabled.
Zhiyi Zhang (1):
winex11.drv: Remove some noisy traces.
```
1
0
The Wine development release 11.14 is now available.
What's new in this release:
- 7.1 format conversions in DirectSound.
- Support for AES-GMAC algorithm in BCrypt.
- New WoW64 mode supported on FreeBSD.
- Icons in Start Menu.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/11.x/wine-11.14.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-11.14/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 11.14 (total 21):
- #21811 3impact tech demo collection crashes on first demo
- #34665 Adobe Reader 11 PDF portfolio search crashes
- #38746 Adobe Reader 9.0 installer fails
- #43775 Heroes of the Storm crash on start with d3d11
- #49868 Hedgewars 1.0.0 crashes when a game against the computer is started
- #52833 Wine's wscript.exe and cscript.exe don't support UTF-16 LE with BOM script files
- #53574 MSYS2 "pacman -Sy" fails key lookup
- #56317 Falcon BMS 4.37 crashes on start (needs D3DX11CreateTextureFromFileA implementation)
- #56501 nProtect Anti-Virus/Spyware 4.0 'tkpl2k64.sys' crashes on unimplemented function 'fltmgr.sys.FltCreateCommunicationPort'
- #56580 Xdefiant Beta needs unimplemented function pdh.dll.PdhGetFormattedCounterArrayA
- #56745 Amazing Adventures 2: mouse pointer flashes all over the screen
- #57801 Marble Marcher Community Edition: Startup error "Compute shader compilation error."
- #58826 Winhq 10.17 seems to loose window focus??
- #59378 Black rectangle box in foreground blocking application window on TaxAct 2025
- #59456 TreeView: TVN_ITEMCHANGING not sent on checkbox change
- #59816 cmd: inbuilt 'type' fails on expanding *.txt
- #59913 msvcrt: _aligned_offset_realloc alignment validation failure crashes PCSX2 nightly
- #59964 Age of Empires I and II both show blank screen in introduction cinematics
- #60000 msvcrt: fopen("wb, ccs=UTF-8") prepends a BOM unlike Windows
- #60021 Wine loader segfaults converting Unix executable path when no DOS drive maps it
- #60039 Microsoft Office Word 2016 hangs after changing a Design style
### Changes since 11.13:
```
Aidan Racaniello (4):
uxtheme: Add GetImmersiveUserColorSetPreference stub.
uxtheme: Add GetImmersiveColorTypeFromName stub.
uxtheme: Add GetImmersiveColorFromColorSetEx semi-stub.
uxtheme: Add GetImmersiveColorNamedTypeByIndex stub.
Alexander Shaikhulin (2):
ntdll: Support new wow64 mode on FreeBSD.
ntdll: Work around AMD SYSRET SS descriptor behavior on FreeBSD.
Alexandre Julliard (31):
setupapi: Delay file copy if truncating fails.
win32u: Add missing newline in a trace.
server: Make the add_queue() operation optional.
server: Make the satisfied() operation optional.
server: Make the signal() operation optional.
server: Make the get_fd() operation optional.
server: Make the get_sync() operation optional.
server: Make the map_access() operation optional.
server: Make the get_sd() operation optional.
server: Make the set_sd() operation optional.
server: Make the get_full_name() operation optional.
server: Make the lookup_name() operation optional.
server: Make the link_name() operation optional.
server: Make the unlink_name() operation optional.
server: Make the open_file() operation optional.
server: Make the get_kernel_obj_list() operation optional.
server: Make the close_handle() operation optional.
server: Make the destroy() operation optional.
server: Use designated initializers for object operations.
server: Make the get_poll_events() fd operation optional.
server: Make the poll_event() fd operation optional.
server: Make the read() fd operation optional.
server: Make the write() fd operation optional.
server: Make the flush() fd operation optional.
server: Make the get_file_info() fd operation optional.
server: Make the get_volume_info() fd operation optional.
server: Make the ioctl() fd operation optional.
server: Make the cancel_async() fd operation optional.
server: Make the queue_async() fd operation optional.
server: Make the reselect_async() fd operation optional.
server: Use designated initializers for fd operations.
Alistair Leslie-Hughes (1):
ntoskrnl.exe: Implement IoThreadToProcess.
Andrea Faulds (1):
explorer: Display icons next to Start Menu items.
Anton Baskanov (1):
dsound: Move the get functions to mixer.c.
Arkadiusz Hiler (1):
dsound: Add mono and stereo to 7.1 conversions.
Barath Kannan (2):
cmd/tests: Add tests for the expansion of wildcards in the type command's arguments.
cmd: Add wildcard expansion for the type command's arguments.
Bernhard Übelacker (4):
wow64: Handle PS_ATTRIBUTE_GROUP_AFFINITY in ps_attributes_32to64.
taskmgr: Change the default push button.
server: Clear connection failure events in IOCTL_AFD_WINE_CONNECT.
kernel32/tests: Fix test_GetFinalPathNameByHandleW.
Brandow Lucas (1):
msxml3: Handle NULL value for the SelectionNamespaces property.
Brendan McGrath (2):
strmbase: Introduce callback for ReceiveCanBlock.
winegstreamer: Preserve sign of stride from 2D buffer.
Brendan Shanks (1):
ntdll: Hard code the host address space limit on macOS.
Connor McAdams (8):
include/ddk: Add some missing enum/structure definitions.
ntoskrnl/tests: Add tests to highlight PDO specific behavior.
ntoskrnl/tests: Add tests for AttachedTo field in DEVOBJ_EXTENSION.
ntoskrnl: Set AttachedTo field in DEVOBJ_EXTENSION when attaching/detaching devices.
ntoskrnl: Set DO_BUS_ENUMERATED_DEVICE flag for PDO DEVICE_OBJECTs.
ntoskrnl: Add checks for DEVICE_OBJECTs passed into various PnP functions.
ntoskrnl: Cache device instance ID for PDOs.
ntoskrnl: Use cached device instance ID for DevicePropertyEnumeratorName.
Conor McCarthy (9):
wintypes/tests: Test DataWriter.
wintypes: Rename struct data_writer to data_writer_factory.
wintypes: Add DataWriter stubs.
wintypes: Implement IDataWriter::WriteBytes().
wintypes: Implement IDataWriter::DetachBuffer().
wintypes: Add IDataWriterFactory stubs.
wintypes: Implement IDataWriterFactory::CreateDataWriter().
wintypes: Implement IDataWriter::StoreAsync().
wintypes: Implement IDataWriter::DetachStream().
Daniel Lehman (1):
shell32/tests: Remove stray test file after directory rename test.
Dmitry Timoshkov (1):
crypt32: Add support for CERT_CLOSE_STORE_FORCE_FLAG.
Elizabeth Figura (13):
qwave: No longer prefer native.
rstrtmgr: No longer prefer native.
svrapi: No longer prefer native.
uianimation: No longer prefer native.
uiautomationcore: No longer prefer native.
websocket: No longer prefer native.
winnls32: No longer prefer native.
wldp: No longer prefer native.
wpc: No longer prefer native.
wined3d: Do not disable extendedDynamicState3PolygonMode (validation).
slc: No longer prefer native.
ncrypt: No longer prefer native.
ntdll: Handle Unix paths with no corresponding drive in get_full_path().
Eric Pouech (3):
dbghelp/dwarf: Implement DW_OP_shra by shifting signed quantities.
dbghelp/dwarf: Follow Dwarf specs for (un)signed arithmetic operations.
dbghelp/dwarf: Report errors when attempting to divide by zero.
Esme Povirk (2):
mscoree: Use wide string literals.
mscoree: Add libmono dll name for arm64.
Georg Lehmann (1):
winevulkan: Update to VK spec version 1.4.357.
Hans Leidekker (4):
bcrypt: Support BCRYPT_SIGNATURE_LENGTH for RSA.
bcrypt: Fix accepted key size for 25519 curve.
bcrypt: Support BCRYPT_AES_GMAC_ALGORITHM.
bcrypt: Support BCRYPT_MESSAGE_BLOCK_LENGTH.
Haoyang Chen (1):
crypt32: Fix CryptRegisterOIDInfo size validation for CRYPT_OID_INFO_HAS_EXTRA_FIELDS compatibility.
Henri Verbeet (2):
d3dcompiler: Store a D3D11_SHADER_DESC structure in struct d3dcompiler_shader_reflection.
d3dcompiler: Adopt vkd3d's STAT parser.
Hieu Le Minh (3):
dxcore: Add support for DedicatedAdapterMemory property.
dxcore: Add support for SharedSystemMemory property.
dxcore: Return stub value for DedicatedSystemMemory property.
Jacob Czekalla (2):
msxml3/tests: Add more tests for setNamedItem().
msxml3: Return new node from setNamedItem().
Jiangyi Chen (2):
symcrypt: Avoid SSE intrinsic that is missing in old gcc versions.
winewayland.drv: Avoid ABBA deadlocks between win_data_mutex and user_mutex.
Kang Kang (1):
dxgi: Return the first adapter from EnumWarpAdapter().
Kyle Yang (1):
wininet: Fix out-of-bounds read in InternetCrackUrlW for empty file paths.
Lakulish Antani (1):
dsound: Add quad and 5.1 to 7.1 conversions.
Lokesh Poovaragan (2):
wscript: Support UTF-16 LE encoded script files.
wscript/tests: Add encoding tests for UTF-16 script files.
Louis Lenders (3):
wminet_utils: Add GetNames.
wminet_utils: Add BeginMethodEnumeration.
cldapi: Add stub for CfGetPlaceholderInfo.
Marcus Meissner (1):
ntdll/tests: GetCurrentDirectoryW gets size in characters not bytes.
Matteo Bruni (1):
winex11: Report right shift as an extended key.
Michael Brabec (1):
avifil32: Fix ICM_COMPRESS_FRAMES_INFO not being sent without VIDCF_COMPRESSFRAMES.
Nikolay Sivov (24):
msxml3/tests: Add some tests for DTD node children.
msxml3/dom: Add notations as children of a DTD.
msxml3: Add a stub for IXMLDOMNotation node.
oleaut32/tests: Add some tests for aggregation with CreateStdDispatch().
oleaut32: Add aggregation support for CreateStdDispatch().
msxml3: Add entities as children of a DTD.
msxml3: Add a stub for IXMLDOMEntity node.
msxml3/notation: Implement nodeTypeString() property.
msxml3/entity: Implement nodeTypeString() property.
msxml3/notation: Implement text() property.
msxml3/tests: Add more tests for notation nodes.
msxml3: Return name properties for IXMLDOMNotation.
msxml3/doctype: Implement hasChildNodes() method.
msxml3/tests: Move some notation tests.
msxml3: Add a helper to return attribute count.
msxml3: Create attributes for IXMLDOMNotation nodes.
msxml3/tests: Add more tests for entity nodes.
msxml3: Add entities as DTD children.
msxml3: Implement name methods for IXMLDOMEntity.
msxml3: Correct copy-pasted variable names.
msxml3: Set entity nodes text property.
msxml3: Add attributes for entity nodes.
msxml3/doctype: Implement entities() property.
msxml3/doctype: Implement notations() property.
Pan Hui (1):
winewayland: Fix restoring window after being maximized on the secondary monitor.
Paul Gofman (5):
ntdll/tests: Add tests for skipping directory reopen by RtlSetCurrentDirectory_U().
ntdll: Do not reopen directory file when setting the same directory path.
winex11.drv: Flush display in acquire_selection().
shell32: Add AppDataDocuments known folder.
ntdll: Add BirthVolumeId to loaded dll file id.
Pavel Cheloveckov (1):
mscoree: Store the sku attribute from supportedRuntime config elements.
Piotr Caban (17):
comsvcs/tests: Remove non-needed IHolder pointer checks.
comsvcs/tests: Test creating multiple Dispenser Managers.
comsvcs: Don't use IDispenserDriver after closing holder.
comsvcs/tests: Add more Dispenser Manager tests.
comsvcs: Add partial implementation of resources pooling.
comsvcs: Implement resource purging thread in Dispenser Manager.
comsvcs: Remove COM initilization hack from Dispenser Manager.
comsvcs: Create one Dispenser Manager in a process.
comsvcs: Exit resource lookup loop when perfect match is found in AllocResource.
comsvcs: Exit resource purging loop on first resource in use.
comsvcs: Remove the FIXME message since pool purging is implemented.
msvcrt/tests: Test BOM handling in files opened in binary mode.
msvcrt: Don't append/read BOM in fopen binary mode.
msvcrt/tests: Cleanup _aligned_offset_realloc tests.
msvcrt/tests: Add more _aligned_offset_realloc tests.
msvcrt: Allow changing alignment and offset in _aligned_offset_realloc.
server: Set kernel notification events initial state.
Rose Hellsing (1):
ntdll: Return empty value instead of failing in NtQueryVolumeInformation.
Shaun Ren (1):
windows.ui: Stub IUISettings2::add_TextScaleFactorChanged().
Stian Low (1):
winhlp32: Implement MACRO_PopupContext.
Tim Clem (1):
winemac.drv: Detect display changes with CGDisplayRegisterReconfigurationCallback.
Yue Zhang (3):
setupapi: Implement SPDRP_ENUMERATOR_NAME.
gdiplus: Fix potential integer overflow in GdipDrawImagePointsRect.
gdiplus: Fix missing newline detection in gdip_format_string.
Zhengyong Chen (3):
pdh: Implement PdhGetFormattedCounterArrayA/W.
mshtml: Fire property change notification when document title is set.
ieframe: Fire TitleChange event on document title change.
Zhiyi Zhang (7):
ntdll/tests: Add ALPC Port object tests.
ntdll/tests: Add NtAlpcCreatePort() tests.
ntdll: Implement NtAlpcCreatePort().
dxgi/tests: Add IDXGISwapChain::ResizeBuffers() flag tests.
dxgi: Support DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT in dxgi_swapchain_flags_from_wined3d().
dxgi: Support modifying swapchain flags in d3d11_swapchain_ResizeBuffers().
dxgi: Support modifying swapchain flags in d3d12_swapchain_resize_buffers().
Zhou Zhang (1):
user32: Release drop target at the end of drag_drop_drop and drag_drop_leave.
```
1
0
The Wine development release 11.13 is now available.
What's new in this release:
- Better support for input pointers.
- Improved keyboard scancode mapping on X11.
- FFmpeg optimizations on ARM64EC.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/11.x/wine-11.13.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-11.13/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 11.13 (total 22):
- #13088 Adobe Acrobat Pro 7 / Acrobat Reader 7 -- Comments don't work
- #30824 msvbvm60.dll crashes Gehalt.exe
- #36373 Requiem: Avenging Angel - Black screen in-game
- #40231 Grand Theft Auto: Vice City crashes at start
- #42282 Tales of Zestiria v1.2 (latest Steam provided runtime) crashes at launch
- #45503 msiexec crashes during Office 2000 setup
- #49435 cyrrillic text are broken in winbox64.exe
- #50030 "Hayoola" freezes in wine 5.19 while it works great in 5.13
- #55030 Nelogica Profitchart freezes and Crash since wine-7.12 [bisect included]
- #55407 Virtual desktop option breaks wine creating windows
- #58105 explorer creates extra virtual desktop when using the /desktop=shell argument
- #58610 Sim Racing Studio fails to start: “Error Loading Prython DLL ”C:\Progam Files\RimsRacingStudio 2.0\python312.dll"
- #59727 DrawText rendering bug when DT_WORD_ELLIPSIS / DT_PATH_ELLIPSIS is used
- #59850 Exit unwind is broken
- #59884 Age of Mythology errors on startup with "Initialization failed"
- #59914 One i386 uwninding testcase fails with wine built with GCC
- #59916 d2d1 path geometry leaks figure->vertex_types (steady heap growth under sustained Direct2D path rendering)
- #59920 msvcrt setjmp/longjmp in x86_64 ELF builds broken by ntdll change
- #59932 Slingplayer 2's help has an extra window
- #59960 Sony Acid Pro 7.0 crashes on startup during initialization
- #59969 winecfg buttons can't be clicked on dpi != 96
- #59975 SuccubusHeaven camera breaks
### Changes since 11.12:
```
Alex Henrie (1):
faudio: Handle odd offsets in decode_mono_adpcm_block.
Alexandre Julliard (6):
ntdll: Fix handling of exit unwind when there are no TEB frames.
msvcrt: Save all registers when calling the exception filter on i386.
ffmpeg: Add support for ARM64EC assembly.
ffmpeg: Add ARM64EC assembly in libswresample.
ffmpeg: Add ARM64EC assembly in libswscale.
make_announce: Use the new Bugzilla REST API.
Alexey Prokhin (1):
win32u: Enable fullscreen clipping even if not already clipping.
Alistair Leslie-Hughes (14):
dplayx: Add missing break.
fltmgr.sys: Add FltAllocateContext stub.
fltmgr.sys: Add FltReleaseContext stub.
fltmgr.sys: Add FltGetStreamContext stub.
fltmgr.sys: Add FltSetStreamContext stub.
fltmgr.sys: Add FltQueryInformationFile stub.
fltmgr.sys: Add FltGetFileNameInformationUnsafe stub.
fltmgr.sys: Add FltReadFile stub.
fltmgr.sys: Add FltParseFileNameInformation stub.
fltmgr.sys: Add FltReleaseFileNameInformation stub.
fltmgr.sys: Add FltGetFileNameInformation stub.
fltmgr.sys: Add FltCreateCommunicationPort stub.
fltmgr.sys: Add FltCloseCommunicationPort stub.
fltmgr.sys: Add FltEnumerateVolumes stub.
Anna (navi) Figueiredo Gomes (9):
win32u: Move process_pointer_message to input.c.
win32u: Keep per-thread list of known pointers.
win32u: Preallocate pointerId 1 for the mouse pointer.
win32u: Keep track of pointer types.
win32u: Implement NtUserGetPointerType.
win32u: Hardcode pointer id 1 to PT_MOUSE in GetPointerType.
win32u: Update pointerid 1 from mouse_in_pointer events.
server: Mask pointer inputs for SetCursorPos requests.
win32u: Implement NtUserGetPointerInfoList.
Anton Baskanov (7):
dmsynth: Increase the write latency by 10 ms.
dsound: Name the parameters of bitsgetfunc and bitsputfunc.
dsound: Remove getieee32 from the getbpp array.
dsound: Get rid of endianness conversion.
dsound: Downmix to mono after resampling and remove get_mono.
dsound: Get rid of get_aux and read the values directly.
dsound: Get all channel samples in one go.
Benoît Legat (2):
crypt32: Avoid conflict between unnamed containers.
crypt32: Open MS_ENH_RSA_AES_PROV in PFXImportCertStore.
Bernhard Übelacker (1):
secur32/tests: Update count for new test.winehq.org certificate.
Brendan Shanks (4):
ntdll: Advertise ARM32 processor features on ARM64.
ntdll: Detect ARM32 processor features using getauxval(AT_HWCAP).
ntdll: Detect ARM64 processor features on macOS, and on Linux using getauxval(AT_HWCAP).
ntdll: Define HWCAP_CPUID on ARM64.
Conor McCarthy (11):
windows.storage/tests: Test InMemoryRandomAccessStream.
windows.storage: Add InMemoryRandomAccessStream stubs.
windows.storage: Implement InMemoryRandomAccessStream IClosable::Close().
windows.storage: Implement InMemoryRandomAccessStream IOutputStream::WriteAsync().
windows.storage: Implement InMemoryRandomAccessStream IRandomAccessStream::get_Size().
windows.storage: Implement InMemoryRandomAccessStream IRandomAccessStream::put_Size().
windows.storage: Implement InMemoryRandomAccessStream IRandomAccessStream::get_Position().
windows.storage: Implement InMemoryRandomAccessStream IRandomAccessStream::Seek().
windows.storage: Implement InMemoryRandomAccessStream IInputStream::ReadAsync().
windows.storage: Add InMemoryRandomAccessStream to class registration.
windows.storage: Do not limit the size to SIZE_MAX in memory_stream_random_access_put_Size().
Daniel Lehman (1):
dwrite: Add some more fallback ranges.
Elizabeth Figura (18):
wined3d: Store plane_formats as wined3d_format pointers.
wined3d: Allow any typed format for planar texture views.
wined3d: Do not alter the swapchain latency.
wined3d: Use a semaphore for frame latency.
dxgi: Implement DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT for d3d11.
dxgi: Implement d3d11_swapchain_SetMaximumFrameLatency().
dxgi: Implement d3d11_swapchain_GetMaximumFrameLatency().
dxgi: Implement d3d11_swapchain_GetFrameLatencyWaitableObject().
acledit: No longer prefer native.
avrt: No longer prefer native.
connect: No longer prefer native.
inkobj: No longer prefer native.
magnification: No longer prefer native.
mscat32: No longer prefer native.
msnet32: No longer prefer native.
msports: No longer prefer native.
mssip32: No longer prefer native.
netprofm: No longer prefer native.
Erhan Bilgili (1):
cfgmgr32: Fix CM_Get_Device_ID buffer size handling.
Eric Pouech (1):
dbghelp/dwarf: Fix out-of-bound write when leaf name is too large.
Etaash Mathamsetty (4):
winex11: Don't initialize win_data_mutex twice.
winewayland: Don't initialize win_data_mutex twice.
winewayland: Use a flag instead of checking zwp_relative_pointer_v1.
winewayland: Don't offset client rect in client surface reconfigure.
Francis De Brabandere (1):
vbscript: Count carriage returns as line endings when reporting error lines.
Gabriel Ivăncescu (7):
mshtml: Don't leak gecko attr when creating attribute.
mshtml: Don't leak ref from attribute collection when detaching attribute.
mshtml: Don't leak gecko attribute when obtaining DISPID from collection.
mshtml: Properly unlink the element refs of frame elements.
mshtml: Properly unlink the element refs of iframe elements.
mshtml/tests: Fix attribute leak when testing tabIndex.
mshtml/tests: Properly close the view of the legacy document when testing attributes across modes.
Haoyang Chen (1):
ole32: Add support for writing VT_BOOL properties.
Jacek Caban (4):
dsound/tests: Remove unused variable.
qcap/tests: Remove unused variable.
ws2_32/tests: Remove unused variable.
http.sys: Check thread_stop in request_thread_proc loop.
Jacob Czekalla (1):
hhctrl.ocx: Create the index popup window hidden.
Jiajin Cui (6):
wininet/tests: Cover long CreateUrlCacheEntryW extensions.
urlmon/tests: Cover URLDownloadToCacheFile buffer bounds.
wininet: Ignore overly long cache file extensions.
urlmon: Fix URLDownloadToCacheFile buffer handling.
urlmon: Remove temporary cache files on failure.
winewayland: Fix y coordinate of IME cursor rectangle.
Louis Lenders (3):
kernel32: Add stub for PssQuerySnapshot.
kernel32: Add stub for PssFreeSnapshot.
kernel32: Add stub for PssCaptureSnapshot.
Maotong Zhang (1):
user32: Fix lastSlash handling in TEXT_PathEllipsify.
Martin Storsjö (1):
configure: Reduce the fixed load address for the preloader on aarch64.
Matteo Bruni (4):
winex11: Fix Right Shift scancode.
user32/tests: Add a SendInput VK_PAUSE test.
user32/tests: Add more key names tests.
user32/tests: Add more key map tests.
Nello De Gregoris (1):
mfsrcsnk: Ignore empty byte stream origin names.
Nikolay Sivov (4):
msxml3/xpath: Add a strstr() variant that handles nulls.
msxml3/xpath: Add a string comparison helper that handles nulls.
msxml3/tests: Add a test for translate() function.
msxml3/xpath: Fix translate() function to actually return its result.
Paul Gofman (4):
ws2_32: Add WSCEnumProtocols32().
kernel32/tests: Test filename case preservation when opening existing file.
kernelbase: Add a stub for FindNextFileNameW().
mmdevapi: Implement SAORS_Reset().
Piotr Caban (3):
secur32: Return impersonation token from lsa_QuerySecurityContextToken.
msv1_0: Decrypt all data buffers in ntlm_SpUnsealMessage.
gdiplus: Return InvalidParameter error when GdipLoadImageFromStream is used with empty stream.
Piotr Pawłowski (2):
comctl32/tests: Add tests for TVN_ITEMCHANGING and TVN_ITEMCHANGED.
comctl32/treeview: Implemented TVN_ITEMCHANGING and TVN_ITEMCHANGED.
Ryan Houdek (1):
wow64: Add BTCpuNotifyProcessExecuteFlagsChange interface.
Rémi Bernon (53):
winewayland: Make window lock mutex recursive.
winewayland: Use update_client_surfaces to detach client surfaces.
winewayland: Remove unnecessary client surface attach / detach.
winewayland: Move ensure_window_surface_contents into wayland_surface.c.
winex11: Use the desired state for mapping delays.
server: Map update_window_zorder rect from raw to virtual coordinates.
server: Update window zorder directly in queue_mouse_message.
wineandroid: Remove now unnecessary update_window_zorder call.
winemac: Remove now unnecessary update_window_zorder call.
winex11: Remove now unnecessary update_window_zorder call.
win32u: Keep track of client surface toplevel window.
win32u: Move client_surface_update on present from winex11.
win32u: Move client surface rect computation out of the drivers.
win32u: Assume that NtUserExposeWindowSurface rect is in raw monitor DPI.
win32u: Reorder KEYEVENTF_SCANCODE handling control flow.
win32u: Remap some scancodes to better match native behavior.
winex11: Use scancode high bit to set KEYEVENTF_EXTENDEDKEY flag.
winex11: Support fixed X11 keycode to scancode conversion.
opengl32/tests: Test versioned / core / compat context creation and sharing.
winemac: Remove unnused macdrv_context renderer_id member.
opengl32: Remove duplicated client context member.
winex11: Remove unnecessary window send_mouse_input argument.
winex11: Pass individual INPUT fields to send_mouse_input.
winex11: Pass / return a POINT to / from map_event_coords.
winex11: Use send_mouse_input in move_resize_window.
winex11: Use send_mouse_input in the RawMotion handler.
win32u: Use internal helpers to get present / client rects and dpi.
win32u: Introduce a ratio struct for unix-side DPI values.
server: Use the ratio struct for DPI values.
win32u: Represent raw monitor dpi as rational value.
server: Move window monitor DPI to the shared memory.
win32u: Ignore empty mouse input in NtUserSendHardwareInput.
server: Skip dispatching rawinput message when it is empty.
win32u: Accumulate mouse motion in NtUserSendHardwareInput.
winex11: Remove now unnecessary mouse motion event merging.
winemac: Try initializing GL3_Core and GL4_Core profile contexts.
winemac: Create all core contexts with the best supported profile.
winemac: Use WGL_CONTEXT_CORE_PROFILE_BIT_ARB to detect core profiles.
win32u: Request core profile for internal OpenGL contexts.
winemac: Ignore context sharing when profile doesn't match.
opengl32: Flag GL_EXT_external_buffer extension as unsupported.
opengl32: Move more wow64 wrappers out of the generated code.
opengl32: Use a static variable for the buffer storage map.
opengl32: Remove unused flags member from buffer struct.
opengl32: Reduce WOW64 locking to the buffer storage map accesses.
server: Always update window monitor DPI from its parent.
winewayland: Remove now unnecessary implicit fullscreen clipping.
server: Support explicit raw mouse motion in NtUserSendHardwareInput.
winewayland: Send raw mouse motion through NtUserSendHardwareInput.
winex11: Enable XI2 raw events when window is focused.
winex11: Send raw mouse motion frames from XI2 RawEvents.
winex11: Remove unnecessary ConfigureNotify event merging.
winex11: Get rid of now unnecessary event merging logic.
Stefan Riesenberger (2):
dnsapi: Add stub for DnsStartMulticastQuery().
dnsapi: Add stub for DnsStopMulticastQuery().
Sven Baars (2):
configure: Set PCSCLITE_LIBS in the AC_CHECK_FUNC error case on macOS.
dxgi: Replace FIXMEs in swapchain latency methods by traces.
Thomas Portal (1):
hidclass: Return the full report length from IOCTL_HID_WRITE_REPORT.
Zhiyi Zhang (14):
dxgi/tests: Wait for destroyed windows to disappear before creating a fullscreen swapchain.
dxgi/tests: Run test_create_swapchain() on D3D12 as well.
dxgi/tests: Test creating a fullscreen swapchain with an invalid scanline order or scaling.
dxgi: Report the DXGI_SWAP_CHAIN_FULLSCREEN_DESC used for creating a D3D11 swapchain.
dxgi: Create a windowed swapchain instead when the fullscreen mode scanline order or scaling is invalid.
dxgi: Refuse to enter fullscreen when the fullscreen mode scanline order or scaling is invalid.
dxgi: Retrieve the fullscreen state from the swapchain state in d3d11_swapchain_GetFullscreenState().
user32/tests: Move the test window position further away from the top-left corner of the work area.
user32/tests: Fix test failures when the top-left corner of the work area is not (0,0).
user32/tests: Add more window placement tests.
win32u: Implement coordinates mapping in {Get,Set}WindowPlacement().
notepad: Use SetWindowPlacement() to restore the saved normal window position.
taskmgr: Use SetWindowPlacement() to restore the saved normal window position.
wordpad: Use SetWindowPlacement() to restore the saved normal window position.
```
1
0
The Wine development release 11.12 is now available.
What's new in this release:
- Bundled libswresample and libswscale from FFmpeg.
- Mono engine updated to version 11.2.0.
- XSLPattern parser reimplemented in MSXML.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/11.x/wine-11.12.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-11.12/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 11.12 (total 27):
- #3037 LTspice, Progman: broken internal windows resizing
- #18010 Slingplayer video tuning wizard fails
- #27240 Multiple Corel product installers report msxml:xslpattern_error syntax error / msxml:domselection_create error code 1206 (Corel Paint Shop Photo Pro, CorelDRAW Graphics Suite X3/X4)
- #33450 .NET 3.5 Framework installation fails (.NET WorkFlow Service Registration Tool "WFServicesReg.exe" crash with libxml2 < 2.9.0)
- #34758 Microsoft Money 97 5.0 crashes with an unhandled divide by zero
- #36912 Taskkill does not support /T option
- #44232 Menus in Slingplayer 1.5 do not draw until mouseover
- #48174 wine-mono creates incorrect strings
- #51678 Avogadro crashes when adding atoms
- #56100 Greenshot: Error when adding a textbox
- #56664 winecfg not exposing an option for 7.1 surround sound audio output (winepulse.drv)
- #58632 Against the Storm: Encyclopedia doesn't display animated sequences
- #59317 Need for Speed Most Wanted (2005): Up is triggered continuously without pressing a button on gamepad
- #59318 Graphic problem
- #59406 Super Hexagon: if gamepad is connected, game will ignore every input after selecting anything from title screen
- #59590 MS-Money 2000 - cannot process TKIND_UNION when loading INV7.OCX
- #59711 unlock_fd: UnlockFile returns ERROR_LOCK_VIOLATION (33) instead of ERROR_NOT_LOCKED (158) when no matching lock is held
- #59820 ComicRackCE freezes when attempting to view "info" for a comic file
- #59842 Cross builds don't install the "wine" executable anymore
- #59855 .configure script fails on system without "ln -s"
- #59856 "musl: Use __builtin_rint if available" breaks rounding control in rint function family on x86_64
- #59870 VRChat PhotonEncryptorPlugin.dll crash
- #59871 Sonic Boom (1995 Klik & Play fangame) fails to create HBITMAP over memory, cannot start
- #59880 For games installed under a prefix that has cnc_ddraw installed using Winetricks, error message appears
- #59886 Build failed for SymCrypt with clang-msvc on x86/i386 and x86_64
- #59894 MS Office 2007 does no longer accept product key from config file
- #59910 One case of i386 unwinding broken
### Changes since 11.11:
```
Alexandre Julliard (20):
makefiles: Don't reuse an install command if it has an explicit destination name.
makefiles: Always enable the wine tool.
makefiles: Also skip C files in arch-specific directories.
libs: Import ffmpeg from upstream release 8.1.1.
user32: Don't send a message in GetComboBoxInfo().
nsiproxy.sys: Link to pthread libs for pthread_once.
ffmpeg: Import upstream assembly optimizations for ARM64.
ffmpeg: Import upstream assembly optimizations for ARM.
makefiles: Add support for nasm.
ffmpeg: Import upstream assembly optimizations for x86.
symcrypt: Disable asm optimizations globally for non-PE builds.
symcrypt: Disable asm optimizations for older clang versions.
ffmpeg: Only disable clang warnings when building ffmpeg itself.
configure: Use the pkg-config specified libs by default in package checks.
configure: Use the pkg-config specified libs also for MinGW checks.
configure: Add more pkg-config checks.
kernelbase: Implement HasFiberData thread flag.
ntdll: Initialize fiber data to 0x1e00.
ntdll: Set default NtGlobalFlag for debugged processes.
server: Fix returned status for NtUnlockFile on unlocked range.
Alistair Leslie-Hughes (4):
tiptsf: Add dll.
tiptsf: Add ITextInputPanel interface stub.
rtscom: Add stub dll.
rtscom: Add RealTimeStylus stubbed interface.
André Zwing (6):
comctl32/tests: Fix typo for ARM64EC.
kernel32/tests: Fix typo for ARM64EC.
oleaut32/tests: Fix typo for ARM64EC.
user32/tests: Fix typo for ARM64EC.
uxtheme/tests: Fix typo for ARM64EC.
vcomp/tests: Fix typo for ARM64EC.
Anna (navi) Figueiredo Gomes (4):
win32u: Stub NtUserGetPointerType.
win32u: Stub NtUserGetPointerDeviceRects.
win32u/tests: Add NtUserGetPointerDeviceRects test for INVALID_HANDLE_VALUE.
win32u: Implement NtUserGetPointerDeviceRects for INVALID_HANDLE_VALUE.
Bartosz Kosiorek (5):
msvcp: Use sizeof(wchar_t) instead of sizeof(char) for basic_string_wchar_replace_cstr_len.
msvcp: Use sizeof(wchar_t) instead of sizeof(char) for basic_string_wchar_replace_ch.
msvcp90: Add _Ctraits<float>::_Isinf(float) implementation.
msvcp90: Add _Ctraits<double>::_Isinf(double) implementation.
msvcp90: Add _Ctraits<long double>::_Isinf(long double) implementation.
Benoît Legat (1):
rsaenh: Fix reporting of "Cryptographic Service Provider".
Bernhard Übelacker (9):
mfplat/tests: Avoid crash if mediasource retrieval failed.
mfplat/tests: Explicitly link against kernel32 before kernelbase.
mfsrcsnk/tests: Add broken in test_mp4_extra_metadata.
user32/tests: Fix test_class_name with old Windows versions.
dxgi/tests: Add two missing winetest_pop_context.
dxgi/tests: Skip tests if DXGI 1.4 is not available.
msxml3/xpath: Fix out-of-bounds access in query string (ASan).
oleview: Avoid heap-use-after-free when reloading (ASan).
regedit: Avoid heap-buffer-overflow in regedit with REG_MULTI_SZ (ASan).
Connor McAdams (1):
dinput: Lowercase device paths passed into insert_cache_entry() when reusing cache entries.
Daniel Lehman (4):
msxml3/tests: Fix double-free of node text.
dwrite: Add fallbacks for arrows.
include: Move ifdef __cplusplus in rpcasync.h.
shell32: Use DE_INVALIDFILES instead of hard-coded value.
Dmitry Timoshkov (2):
oleaut32: Take into account that SAFEARRAY element in an SLTG typelib uses 32-bit units.
gdi.exe: Don't use biSizeImage when calculating DIB pitch.
Esme Povirk (1):
mscoree: Update Wine Mono to 11.2.0.
Etaash Mathamsetty (6):
winewayland: Implement fractional scaling protocol.
winewayland: Fix missing wayland_win_data_release.
win32u: Always flush the window surface in expose_window_surface.
winewayland: Assign a name to the winewayland queue.
winewayland: Change default debug channel to cursor for pointer.
winewayland: Rename toplevel_hwnd to owner_hwnd.
Feli Rippmann (1):
comctl32: Clamp rebar height to cyMaxChild when cyIntegral == 0 too.
Floris Renaud (1):
po: Update Dutch translation.
Francis De Brabandere (6):
vbscript: Index named items by name.
vbscript: Store global variables and functions in a single tagged tree.
vbscript: Parse a bare '&' followed by octal digits as an octal literal.
vbscript: Cache host DISPIDs as entries in the unified global tree.
vbscript: Raise type mismatch when comparing an array.
vbscript: Look up named items before builtin functions.
Giang Nguyen (1):
d2d1: Free the vertex types array in d2d_figure_cleanup.
Hans Leidekker (4):
bcrypt: Fix parameter validation for GCM mode.
bcrypt: Remove unused fields.
symcrypt: Accept RSA keys with public exponent 1.
bcrypt: Reject RSA keys with public exponent 1.
Henri Verbeet (2):
d3dcompiler: Retrieve signature information using vkd3d in d3dcompiler_shader_reflection_init().
d3dcompiler: Retrieve thread group size information using vkd3d in d3dcompiler_shader_reflection_init().
Jacek Caban (12):
dpnet: Remove unused variables.
rpcrt4/tests: Remove unused variables.
riched20/tests: Remove unused variables.
msxml6/tests: Enable call checks in set_xht_site.
msxml3/tests: Remove unused code.
msxml3/tests: Add missing CLEAR_CALLED statement.
mf/tests: Remove unused variables.
wbemprox: Remove unused variable.
winebus: Remove unused variables.
joy.cpl: Remove unused variable.
winevulkan: Remove unused variable.
winex11: Remove unused variables.
Marius Kamm (2):
windowscodecs: Fix decoding GIFs that fill the LZW code table.
windowscodecs/tests: Test decoding a GIF that fills the LZW code table.
Martin Storsjö (2):
ntdll: Don't validate arm64 pointer signing when unwinding.
include: Use __msvcrt_ulong in setjmp.h.
Matteo Bruni (1):
dsound: Get rid of non-float mixing remnants.
Nello De Gregoris (1):
mfsrcsnk: Use SetCurrentPosition() for absolute byte stream seeks.
Nikolay Sivov (15):
dsrole: Add a new dll.
netapi32: Forward DsRole* functions to dsrole.dll.
msxml3/tests: Add more selection tests.
msxml3/xpath: Remove duplicate line typo.
msxml3/tests: Add some tests for node value comparison in queries.
msxml3/xpath: Fix comparison direction for node-set vs value case.
msxml3/tests: Add some more comparison tests for XPath.
msxml3: Add a helper to check for XPath query keywords.
msxml3: Explicitly switch to XPath for XmlView documents.
msxml3: Handle XSLPattern syntax directly instead of converting to XPath.
msxml3: Fix a typo in a helper name.
msxml3/tests: Add a query test with attribute test in the predicate.
msxml3: Add support for nodeName() function.
msxml3: Rename helpers to reflect their purpose better.
msxml3: Remove now unused file.
Pan Hui (1):
winewayland: Use process_name in wl_display_create_queue_with_name for debugging.
Paul Gofman (21):
nsiproxy.sys: Factor out icmp_socket structure.
nsiproxy.sys: Rename icmp_listen into icmp_get_reply.
nsiproxy.sys: Contain all the reply data in struct icmp_reply_ctx.
nsiproxy.sys: Manage ICMP listen threads on the Unix side.
nsiproxy.sys: Poll all icmp sockets in a single thread.
nsiproxy.sys: Return ICMP ids from parse_icmp_hdr() instead of matching those.
nsiproxy.sys: Reuse icmp socket with matching parameters.
nsiproxy.sys: Support ICMP error replies with ping sockets.
nsiproxy.sys: Use compatible ICMP request id and seq numbers.
winevulkan: Do not show debug assertion dialog on Unix side exceptions.
win32u: Support D3D12_FENCE_SUBMIT_INFO in win32u_vkQueueSubmit().
win32u: Force timeline semaphore type when importing d3d12 fence.
ntdll/tests: Add tests for PROCESS_PARAMS_IMAGE_KEY_MISSING flag.
ntdll: Manage PROCESS_PARAMS_IMAGE_KEY_MISSING flag.
imm32/tests: Flush events in test_ImmSetCompositionWindow().
imm32/tests: Add tests for resetting in-composition state.
imm32: Strip off trailing zeros in ImeSetCompositionString().
imm32: Clear in-composition state when empty composition string is set.
imm32: Reset composition string when deactivating context.
wbemprox: Use device instance id for pnpdevice_id in get_display_adapters().
ntdll: Don't reserve exc_stack_layout twice in call_user_exception_dispatcher() on i386.
Piotr Caban (10):
mshtml: Added IHTMLTextAreaElement::disabled property implementation.
msv1_0: Initialize seal keys in ntlm_SpAcceptLsaModeContext.
ucrtbase/tests: Remove no longer needed workaround from test_math_errors.
ucrtbase: Don't use builtin_rint since it doesn't respect rounding control.
secur32/tests: Cleanup ntlm negotiate flags tests.
secur32/tests: Test ctxt_attrs value after initial InitializeSecurityContextA call.
msv1_0: Fix buffer type returned by ntlm_SpAcceptLsaModeContext.
msv1_0: Make output argument optional on second call to ntlm_SpAcceptLsaModeContext.
msv1_0: Set ctxt_attr in ntlm_SpInitLsaModeContext.
msv1_0: Set ctxt_attr in ntlm_SpAcceptLsaModeContext.
Rose Hellsing (4):
gdiplus: Recognize raw WMF streams in the WMF image codec.
gdiplus: Rasterize metafiles for encoding and report raw WMF as EMF.
gdiplus: Store the source HMETAFILE for proper lifetime management.
gdiplus/tests: Add tests for raw WMF load, playback and encoding.
Rémi Bernon (50):
xinput1_3: Introduce a new open_device_at_index helper.
mf/topology_loader: Restore original type when optional connection fails.
opengl32: Implement client / host mapping for shader names.
opengl32: Use a per-table lock for context / pbuffer / sync handles.
opengl32: Move the sync handle table to the display lists.
opengl32: Trace client side object names leaks.
opengl32: Remove unused unix thunks.
ffmpeg: Redirect av_log calls to Wine debug traces.
winegstreamer: Remove unnecessary resampler inline qualifiers.
winegstreamer/resampler: Implement IMediaObject iface using libswresample.
winegstreamer/resampler: Translate IMFTransform calls to IMediaObject.
resampledmo: Move resampler implementation from winegstreamer.
win32u: Add a new driver entry to create client surfaces.
win32u: Create vulkan client surfaces from win32u.
win32u: Create OpenGL client surfaces from win32u.
user32/tests: Use 1024x768 as test resolution for DPI scaling on Windows.
user32/tests: Add more GetPointerDeviceRects tests with DPI scaling.
opengl32: Unset current context on thread detach.
win32u: Create a default thread context when binding NULL.
opengl32: Ensure a context is current before display lists destruction.
win32u: Share all unix-side GL contexts with a global context.
opengl32: Keep a global WOW64 buffer storage map.
opengl32: Implement wglShareLists on the PE side.
win32u: Get rid of opengl_drawable set_context callback.
opengl32: Allocate WOW64 buffers struct with calloc.
opengl32: Set dummy context with wglMakeContextCurrentARB.
gitlab: Add nasm to the CI docker images.
xinput1_3: Move keystroke states and locks to check_for_keystroke.
xinput1_3: Read and write current state without the controller lock.
xinput1_3: Use a global critical section to guard device and enabled flag.
xinput1_3: Extend the CS to guard all device open / read / destroy.
winegstreamer/color_convert: Remove unnecessary inline qualifiers.
winegstreamer/color_convert: Implement IMediaObject iface using libswscale.
winegstreamer/color_convert: Translate IMFTransform calls to IMediaObject.
colorcnv: Move color converter implementation from winegstreamer.
winegstreamer/video_processor: Reimplement using libswscale.
msvproc: Move video processor implementation from winegstreamer.
opengl32: Only query GL_CONTEXT_PROFILE_MASK with GL >= 3.2.
opengl32: Only reserve name range if range length is > 0.
opengl32: Remove now unnecessary context creation attribs.
winewayland: Make sure the primary monitor rect is at 0x0.
winewayland: Use RECT / POINT to map coordinates from surface.
winewayland: Use RECT / POINT to map coordinates to surface.
winewayland: Use a RECT in struct wayland_surface_config.
win32u: Use the null context instead of internal context for pbuffers.
win32u: Notify driver of capture window reset on destruction.
win32u: Pass current and previous toplevel windows to SetCapture.
winex11: Also ignore warped MotionNotify if cursor isn't clipped.
winex11: Simplify send_mouse_input when clipping cursor.
winex11: Get rid of now unnecessary x11drv_thread_data()->grab_hwnd.
Shaun Ren (10):
xinput1_3: Remove an unreachable return from HID_set_state().
xinput1_3: Keep controller read events across device changes.
xinput1_3: Return correct slot indices for existing devices in find_opened_device().
xinput1_3: Don't wait on overlapped event if CancelIoEx failed.
xinput1_3: Clear enabled when controller is destroyed on read error.
xinput1_3: Return FALSE from controller_init if device enable failed.
xinput1_3: Disable controller when removing an opened device.
xinput1_3: Rescan controllers before reporting disconnection to callers.
xinput1_3: Initialize state with the previous state in read_controller_state.
xinput1_3: Initialize controller state only on success in controller_init.
Soham Nandy (1):
ntdll: Ignore hardware breakpoint traps inside the signal stack.
Thomas Portal (1):
user32: Add a stub for IsImmersiveProcess().
Tobias Markus (1):
ksecdd.sys: Forward BCrypt functions to bcrypt.dll.
Vibhav Pant (1):
winebth.sys: Ensure bus relations are invalidated after the PDO has been started by the PnP manager.
Wolfgang Hartl (1):
oleaut32: Implement SLTG union type processing.
Zhengyong Chen (1):
windowscodecs: Decode GIF frames on demand.
Zhiyi Zhang (1):
server: Fix a memory leak in d3dkmt_share_objects.
Ziqing Hui (1):
dwrite: Fix Miscellaneous Symbols font fallback.
```
1
0
The Wine development release 11.11 is now available.
What's new in this release:
- Bundled SymCrypt library, to replace TomCrypt.
- More USER32 window information moved to shared memory.
- Layered windows in the Wayland driver.
- More VBScript compatibility improvements.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/11.x/wine-11.11.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-11.11/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 11.11 (total 25):
- #27579 The appearance of uTorrent 3.x torrents list is broken
- #32079 Dotted (.foobar) files are not displayed in file open dialog
- #37849 Wine causing color temperature setting(redshift) not working for a short time
- #41134 Foxit Reader 8.x service 'FoxitConnectedPDFService.exe' crashes on startup due to invalid database permissions ('ConvertStringSecurityDescriptorToSecurityDescriptor' SDDL / ACL parser must take whitespace between ACEs into account)
- #49622 error in installing battle.net launcher
- #49722 Space Empires V can't load certain images (.bmp) with built-in d3dxof.dll
- #50583 Foxit PhantomPDF Business v10.0 installer crashes in MSI custom action 'SetStartMenuWindows10T' with WinVer set to 'Windows 10'
- #50763 Wreckfest has blurry rendering with OpenGL renderer
- #51433 Battle.Net: Installer terminates with BLZBNTBTS0000005C error screen
- #51567 Battle.net app takes a long time to start
- #53293 Total War: Shogun 2 crashes with builtin d3dx9_42
- #53653 winmine.exe is not scaled properly to match the output DPI
- #54189 Fail in SetupDiEnumDeviceInfo: err=259: No more data available.
- #54694 Marvel's Spider-Man Remastered requires Windows 10 version 1909, build 18363 (or newer)
- #55230 Yesterday Origins shows black screen while playing some videos
- #56398 Think or Swim running in WINE, loads, then crashes, and need to be shut down.
- #57806 visual and response lags in Guitar Pro v8.1.3 (build 121)
- #58297 [Wayland-only mode] Minimize button click makes the app window buttons lock up
- #59125 Sunlogin crashes on unimplemented function advapi32.dll.WmiCloseBlock
- #59453 uSimmics crashes on unimplemented function msvcp100.dll._Sinh
- #59549 MS-Money 2000 - shows errors when loading INV7.OCX
- #59604 setupapi: CM_Get_Parent stub breaks USB HID device identification
- #59807 Regression in multithreaded application
- #59841 Missing audio in Gray Matter due to FAudio 26.06 import
- #59845 Istaria: game window fails to appear since Wine 11.10
### Changes since 11.10:
```
Alexandre Julliard (35):
configure: Re-generate with autoconf 2.73.
libs: Import upstream code from SymCrypt 103.11.0.
rsaenh: Use SymCrypt for hash algorithms.
rsaenh: Use SymCrypt for AES, DES and RC2.
symcrypt: Add pclmul target for older compilers.
ntdll: Use SymCrypt for SHA hashes.
ntdll: Get crc32 implementation from zlib instead of tomcrypt.
configure: Don't try to link to external zlib.
makefiles: Look for dependencies in assembly files.
makefiles: Only build asm files in PE builds.
makefiles: Use a separate directory for ARM64EC asm files.
symcrypt: Import upstream assembly code for x86-64.
symcrypt: Import upstream assembly code for ARM64.
symcrypt: Import upstream assembly code for ARM.
symcrypt: Import upstream assembly code for i386.
faudio: Import upstream release 26.06.
mpg123: Import upstream release 1.33.5.
png: Import upstream release 1.6.58.
lcms2: Import upstream release 2.19.1.
sqlite3: Import upstream release 3.53.2.
sqlite3: Disable debug assertions.
rsaenh: Align allocations for SymCrypt.
dssenh: Align allocations for SymCrypt.
notices: Add a file to collect all third-party copyright notices.
makedep: Add a helper function to skip an initial directory.
makedep: Also ignore missing headers when included from external lib header.
fluidsynth: Remove unused files.
gsm: Remove unused files.
icucommon: Remove unused files.
icui18n: Remove unused files.
ldap: Remove unused files.
vkd3d: Remove unused files.
xml2: Remove unused files.
faudio: Don't fixup wma bitrate if it's already valid.
ntdll: Support either a Unix call function table or a __wine_unix_lib_init entrypoint.
Alistair Leslie-Hughes (1):
include: Add IInkRecognizerContext coclass.
Anton Baskanov (5):
dsound: Use DWORD to store freqAdjustNum, freqAdjustDen and freqAccNum.
dsound: Move cp_fields_noresample after cp_fields_resample.
dsound: Use #define for fir.h constants.
dsound: Add an SSE version of upsample.
dsound: Add an SSE version of downsample.
Bernhard Kölbl (2):
win32u: Add missing internal messages to spy.
win32u: Add win32u internal driver messages to spy.
Bernhard Übelacker (9):
crypt32/tests: Avoid crash in testCertProperties.
rsaenh: Use _aligned_free instead of free for aligned allocations (ASan).
dssenh: Use _aligned_free instead of free for aligned allocations (ASan).
dsound/tests: Don't fail test if device cannot be opened the second time.
webservices/tests: Improve double tests.
user32/tests: Fix test_window_extra_data_proc.
windows.ui.core.textinput/tests: Only check interfaces if retrieval succeeded.
imagehlp/tests: Accept zero checksum if the compiler emitted a zero checksum.
kernel32/tests: Fix tests with old Windows 10 versions.
Charlotte Pabst (3):
include: Add some missing definitions in mfd3d12.idl.
mfplat/tests: Add tests for mf d3d12 synchronization object.
mfplat: Implement mf d3d12 synchronization object.
Conor McCarthy (6):
quartz: Update current and elapsed positions in Stop().
d3d8/tests: Test multisampled back buffer locking.
d3d9/tests: Test multisampled back buffer locking.
wined3d: Disallow locking of multisampled back buffers.
mfplat/tests: Test CreateObjectFromByteStream() URL with unknown or no extension.
mfplat: Do not require CONTENT_DOES_NOT_HAVE_TO_MATCH_EXTENSION_OR_MIME_TYPE if no extension is present.
Dmitry Timoshkov (9):
msi: Catch all exceptions in the custom DLL procedure.
msi: Return ERROR_INSTALL_FAILURE on an exception in the custom action.
ole32/tests: Add some tests for IStorage::MoveElementTo().
ole32: Implement IStorage::MoveElementTo() for stream element.
ole32: Implement IStorage::MoveElementTo() for storage element.
widl: Add support for enums to SLTG typelib generator.
widl: Add support for unions to SLTG typelib generator.
sane.ds: Add more traces.
sane.ds: SANE_DisableDSUserInterface() should accept states 5 and 6.
Elizabeth Figura (11):
srclient: No longer prefer native.
wevtapi: No longer prefer native.
ninput: No longer prefer native.
msctf: No longer prefer native.
msctfmonitor: No longer prefer native.
quartz/tests: Add a few more seeking tests.
directmanipulation: No longer prefer native.
feclient: No longer prefer native.
d3d8thk: No longer prefer native.
shcore: No longer prefer native.
userenv: No longer prefer native.
Esme Povirk (1):
comdlg32: Treat empty default extension as null.
Etaash Mathamsetty (3):
winewayland: Do not place_above on a detached client surface.
winewayland: Treat maximized+fullscreen state as fullscreen.
winewayland: Implement min/max size hints for non-resizeable windows.
Fatih Uzunoglu (1):
mscms: Add stub for `WcsCreateIccProfile()`.
Francis De Brabandere (20):
scrrun/tests: Add tests for dictionary put_Key.
scrrun/dictionary: Rename keys in place in put_Key.
vbscript: Bind local variables and arguments at compile time.
vbscript: Factor out assign_local_var from assign_ident.
vbscript: Bind local variable assignments at compile time.
vbscript: Factor out do_for_step and do_incc from interp_step and interp_incc.
vbscript: Bind For-loop variables at compile time.
vbscript: Bind class properties at compile time.
scrrun/tests: Add tests for Empty dictionary keys.
scrrun/dictionary: Match Empty keys against zero-valued and empty-string keys.
scrrun/tests: Add tests for Boolean dictionary keys.
scrrun/dictionary: Match native key semantics for Boolean keys.
vbscript/tests: Add tests for class declaration scope.
vbscript: Handle class declaration scope in the parser.
vbscript/tests: Add tests for sub declaration scope.
vbscript: Lex a dot immediately followed by a digit as a numeric literal.
vbscript: Report specific compile errors for trailing tokens and missing identifiers.
vbscript: Allow Dim to shadow a global const from a previous compile unit.
vbscript/tests: Add tests for one-line sub headers with multi-line bodies.
vbscript: Keep the offending identifier out of Err.Description.
Francisco Casas (3):
win32u: Enable VK_KHR_external_fence_capabilities in d3dkmt_init_vulkan().
wined3d: Enable VK_KHR_external_fence_capabilities when initializing vulkan.
wined3d: Don't use texelFetchOffset() for buffers and multi-sample textures.
Gabriel Ivăncescu (1):
ieframe: Return S_FALSE for NULL URLs in WebBrowser_Navigate.
Georg Lehmann (1):
winevulkan: Update to VK spec version 1.4.353.
Hans Leidekker (9):
winhttp: Revert recursion limit to 3.
rsaenh: Use SymCrypt for RSA and RC4.
dssenh: Use SymCrypt.
bcrypt: Use SymCrypt for hashes.
tomcrypt: Remove library.
bcrypt: Use SymCrypt for keys.
bcrypt: Get rid of the unixlib.
bcrypt: Add initial support for CHACHA20_POLY1305.
bcrypt: Add support for Brainpool curves.
Ivan Lyugaev (1):
secur32: Return SEC_E_INVALID_TOKEN for invalid TLS record headers.
Jacek Caban (12):
jscript/tests: Remove unused variables.
vbscript/tests: Remove unused variables.
ucrtbase/tests: Link directly to environment functions.
msvcp140_1/tests: Remove unused variable.
msvcp60/tests: Remove unused variable.
ddraw/tests: Remove unused variable.
ddraw: Remove unused variable.
ntdll: Synthesize caller context in ARM64EC RtlRaiseException.
ieframe/tests: Add missing CHECK_CALLED statements.
scrobj/tests: Remove unused variables.
wpcap/tests: Remove unused variables.
shcore/tests: Remove unused variables.
Jiangyi Chen (2):
winewayland.drv: Add alpha-modifier-v1 protocol to support change alpha by WAYLAND_SetLayeredWindowAttributes.
winewayland.drv: Add WAYLAND_UpdateLayeredWindow and add support for changing alpha using the alpha-modifier-v1 protocol.
Kellen Kopp (1):
win32u: Fixed incorrect glyph outline size.
Marc-Aurel Zent (3):
winemac: Remove unused includes in vulkan.c.
winemac: Factor out Metal device and view logic into MetalViewSwapChain.
winemac: Implement cross-process MetalViewSwapChain via CALayerHost.
Martin Storsjö (2):
ntdll: Fix building for arm64 without HWCAP_CPUID defined.
ntdll: Fix building for arm64 without ESR_MAGIC/esr_context.
Matteo Bruni (4):
server: Fix numpad vkey handling.
winex11: Return the layout index from from detect_keyboard_layout().
winex11: Create layouts when falling back to fuzzy detection.
configure: Add -msse2 to default i386_EXTRACFLAGS.
Nikolay Sivov (5):
msxml3/writer: Use wchar literals in more places.
msxml3/tests: Add more tests for the writer output.
msxml3/tests: Use writer output test helper throughout the tests.
msxml3/tests: Avoid string conversion in a few places.
msxml3/writer: Normalize newlines in CDATA content.
Paul Gofman (8):
ddraw: Renamed is_root surface attribute to is_implicit.
ddraw: Allow attaching flip chain surfaces.
ddraw/tests: Add tests for attaching and detaching backbuffers on ddraw1.
ddraw: Force render target bind flags on v1 swapchain candidate surfaces.
kernelbase: Add stub for GetIntegratedDisplaySize().
dsound: Fail IDirectSoundCaptureBufferImpl_Lock() for invalid buffer range.
ddraw/tests: Remove extra backbuffer1 release in test_surface_attachment().
win32u: Always consider newly created shape updated in set_surface_shape().
Piotr Caban (3):
msxml3: Don't add newline before first element when indentation is enabled.
msxml3: Don't indent endElement since it changes text node content.
include: Define more runtimeclasses in windows.storage.streams.idl.
Rose Hellsing (6):
wineboot: Create SQMClient MachineId registry key.
ntdll: Account for read-only cookie in loader.
ntoskrnl.exe: Account for read-only cookies.
kernel32/tests: Add test for read-only cookie in loader.
riched20: Properly capture \pntext content.
riched20/tests: Expand editor tests to verify \pntext behaviour.
Russell Greene (1):
hhctrl: Return a nonzero cookie from HH_INITIALIZE.
Rémi Bernon (43):
server: Keep track of builtin class FNID on registration.
server: Introduce a get_class_fnid helper.
user32: Set builtin class FNID for menu controls.
user32: Set builtin class FNID for MDI client controls.
user32: Set builtin class FNID for dialog controls.
win32u: Set builtin class FNID on window creation.
winex11: Move find_xkb_layout_variant helper around.
opengl32: Allocate display lists for client-side contexts.
opengl32: Share display lists in wglShareLists on the PE side.
opengl32: Query the context profile mask on init.
opengl32: Track client-side buffer names allocation.
opengl32: Track implicit buffer names allocation.
user32: Store a scroll_info pointer in the scrollbar control info.
user32: Set FNID for the builtin scrollbar window class.
opengl32: Call get_integer hook after a successful unix call.
opengl32: Add get_integer hooks to indexed glGet functions.
opengl32: Pass the returned unix value to get_integer hooks.
opengl32: Hook more glGet functions with get_integer.
opengl32: Implement client / host mapping for buffer names.
win32u: Introduce a server_set_window_info helper.
server: Move window extra data to the shared memory.
win32u: Return value directly from get_window_extra.
server: Move window id / menu to the shared memory.
server: Move window instance to the shared memory.
server: Move window user data to shared memory.
server: Move class local flag to the shared memory.
server: Keep track of class window proc ansi nature.
win32u: Simplify winproc handle to index conversions.
win32u: Move window procedure to the shared memory.
opengl32: Implement client / host mapping for framebuffer names.
opengl32: Allow framebuffer implicit allocation in some core contexts.
opengl32: Implement client / host mapping for renderbuffer names.
opengl32: Allow renderbuffer implicit allocation in some core contexts.
opengl32: Implement client / host mapping for texture names.
opengl32: Ignore more cases in make_opengl get_object_type.
opengl32: Implement client / host mapping for sampler names.
opengl32: Implement client / host mapping for display list names.
opengl32: Implement client / host mapping for program names.
opengl32: Implement client / host mapping for vertex shader names.
opengl32: Implement client / host mapping for fragment shader names.
opengl32: Implement client / host mapping for semaphore names.
opengl32: Implement client / host mapping for memory names.
opengl32: Implement client / host mapping for path names.
SeongChan Lee (1):
winexinput.sys: Fix handling of non-32-bit axis.
Soham Nandy (1):
ntdll: Preserve nonvolatile registers across VEH callbacks.
Steven Don (2):
atl: Implement registering ATL window messages.
atl/tests: Add tests for proper handling of WM_ATLGETCONTROL and WM_ATLGETHOST.
Thibault Payet (1):
ntdll/unix: Always define get_current_thread_data.
Tim Clem (1):
hnetcfg: Report 0 returned elements from IEnumVARIANT::Next.
Twaik Yont (1):
wineandroid: Raise minimum SDK version to 28 (Android 9.0).
Vibhav Pant (2):
combase/tests: Add tests for delayed marshaling of objects with apartment affinity.
combase: Implement delayed marshaling for RoGetAgileReference.
Wolfgang Hartl (1):
ir50_32: Export DllRegisterServer and DllUnregisterServer.
Yuxuan Shui (2):
mf/tests: Check frame size of video processor's output type.
winegstreamer: Video processor shouldn't have a preferred size.
Zhengyong Chen (1):
win32u: Fix signed coordinate extraction in drag_drop_call.
```
1
0
The Wine development release 11.10 is now available.
What's new in this release:
- Bundled vkd3d upgraded to version 2.0.
- XPath support reimplemented without libxml2.
- More VBScript compatibility improvements.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/11.x/wine-11.10.tar.xz>
Binary packages for various distributions will be available
from the respective [download sites][1].
You will find documentation [here][2].
Wine is available thanks to the work of many people.
See the file [AUTHORS][3] for the complete list.
[1]: https://gitlab.winehq.org/wine/wine/-/wikis/Download
[2]: https://gitlab.winehq.org/wine/wine/-/wikis/Documentation
[3]: https://gitlab.winehq.org/wine/wine/-/raw/wine-11.10/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 11.10 (total 17):
- #9404 cannot select TWAIN source in irfanview
- #41047 Star Wars Racer videos have no sound
- #46635 git for windows works or crashes depending on how its invoked
- #48644 Kodak EasyShare installer doesn't populate list of countries (needs GEO_FRIENDLYNAME)
- #49720 Family Tree Maker 2017 installer fails after numerous "fixme" console messages
- #50589 Foxit PhantomPDF Business v10.0 installer fails, reports 'Printer installation failed, please check the print service.'
- #56482 Vocaloid 6 does not run
- #57329 Desktop files generated by Wine do not conform to the Desktop Entry Specification
- #58887 Opening screen of Photolemur 3 has 'tofu' characters between letters on three lines
- #58888 Photolemur 3 crashes if you use the Settings / Language menu
- #59522 explorerframe: ITaskbarList3 SetProgressValue/SetProgressState stubs - could use native desktop backends
- #59539 Querying namespace nodes via XPath's namespace:: axis returns NULL for all nodes. selectSingleNode("namespace::prefix") returns S_FALSE/NULL and selectNodes("namespace::*") returns an empty list, even when the namespace is in scope.
- #59555 Star Wars: Knights of the Old Republic - Rendering failure with active framebuffer effects
- #59625 shcore: Set/GetCurrentProcessExplicitAppUserModelID are stubs
- #59771 TrackChecker-x64.exe hangs at 100% CPU on startup since Wine 11.7 (msxml3 regression)
- #59774 Age of Empires III: The Asian Dynasties crashes in the beginning cinematics
- #59789 comctl32:button: Test fails since 67898adb91
### Changes since 11.9:
```
Aaron Yourk (2):
ole32/tests: Add test for OLE clipboard reuse across STA threads.
ole32: Validate cached clipboard window handle in get_clipbrd_window.
Alex Henrie (7):
wininet: Fix a memory leak in HTTP_DoAuthorization.
shell32: Correct folder rename icon ID.
shell32: Correct XP control panel icon ID.
shell32: Add computer-turning-off icon.
shell32: Correct shield icon ID.
winex11: Add missing const in langid_from_xkb_layout (GCC).
winebth: Fix a memory leak in bluez_gatt_characteristic_read.
Alexandre Julliard (22):
win32u: Implement NtUserGetMessagePos().
win32u: Implement NtUserSetMessageExtraInfo().
mmdevapi: Use a system thread for the audio driver main loop thread.
mmdevapi: Use a system thread for the audio driver timer loop thread.
user32: Reimplement InSendMessageEx() using NtUserGetThreadState().
win32u: Remove redundant receive_flags from the user thread info.
user32: Use NtUserGetAncestor to check for desktop window.
win32u: Move desktop and message windows to the internal thread info.
win32u: Move the GetMessagePos/Time/ExtraInfo values to the internal thread info.
imm32: Get the default IMC from the win32u thread state.
win32u: Move the default IMC to the internal thread info.
win32u: Use a private counter for winproc user callbacks recursion.
win32u: Use pthread instead of the TEB to access internal per-thread data.
win32u: Avoid using NtUserGetThreadInfo() on the Unix side.
vkd3d: Import upstream release 2.0.
user32/tests: Add some more tests for GetCurrentInputMessageSource().
win32u: Save/restore the message source directly in call_window_proc().
win32u: Add support for threads that don't have a TEB.
uxtheme: Don't repaint the window itself in DrawThemeParentBackground.
include: Move some definitions to processthreadsapi.h.
include: Add a number of Interlocked intrinsic defines.
nls: Update sorting weights to the Windows 11 version.
Alistair Leslie-Hughes (14):
uiautomationcore: Add UiaDisconnectAllProviders stub.
include: Add ndattrib.idl.
include: Add ndfapi.h.
hnetcfg: Return empty collection in INetFwRules_NewEnum.
ndfapi: Add a stub dll.
wkscli: Add stub dll.
wkscli: Move some functions from netapi32.
include: Rename tpcshrd.h to tpcshrd.idl.
include: Add rtscom.idl.
advapi32: Add WmiCloseBlock stub.
thumbcache: Add stub dll.
uuid: Add thumbcache.h.
thumbcache: Add LocalThumbnailCache stubbed interface.
sechost: Skip spaces after a bracket when parsing acl strings.
Andrey Gusev (1):
qcap: Change helpstring for AVICo coclass.
Aric Stewart (1):
uniscribe: Correct possible buffer over/under runs.
Arie Miller (1):
shell32: Don't add backslash after CSIDL_PERSONAL.
Bartosz Kosiorek (6):
msvcp90: Add _FSinh implementation.
msvcp90: Add _Sinh implementation.
msvcp90: Add _FCosh implementation.
msvcp90: Add _Cosh implementation.
msvcp90: Add _LCosh implementation.
msvcp90: Add _LSinh implementation.
Benjamin Fischer (1):
msvcrt: Avoid expensive timezone queries from plain time() calls.
Bernhard Kölbl (1):
wine.inf: Add ImmersiveShell registry key.
Bernhard Übelacker (3):
regedit: Remove unused variable.
uninstaller: Remove unused variable.
setupapi: Only copy dest when it got written by SetupCopyOEMInfW (ASan).
Bohdan Tkachenko (2):
sapi: Implement ISpVoice::GetStatus.
sapi: Implement ISpVoice::SetPriority and GetPriority.
Brendan Shanks (1):
ntdll: Handle SIGBUS with the SIGSEGV handler on ARM64.
Connor McAdams (14):
d3dx10/tests: Add tests for loading 2D texture array DDS files.
d3dx11/tests: Add tests for loading 2D texture array DDS files.
d3dx10: Add support for loading DDS files containing texture arrays.
d3dx11: Add support for loading DDS files containing texture arrays.
d3dx10/tests: Add tests for D3DX10LoadTextureFromTexture().
d3dx10: Validate some input arguments in D3DX10LoadTextureFromTexture().
d3dx10: Handle cases in D3DX10LoadTextureFromTexture() where no data is loaded.
d3dx10: Implement texture level loading in D3DX10LoadTextureFromTexture().
d3dx10: Add support for mipmap generation in D3DX10LoadTextureFromTexture().
d3dx10: Add support for 3D textures in D3DX10LoadTextureFromTexture().
user32/tests: Add tests for RealGetWindowClass.
comctl32/tests: Add tests for RealGetWindowClass.
win32u/tests: Add a test for real window class name retrieval.
user32: Pass real argument to NtUserGetClassName in RealGetWindowClass{A/W}.
Elizabeth Figura (33):
Revert "packager: Prefer native version."
Revert "dxcore: Prefer native."
vulkan-1: Do not prefer native.
ksuser: No longer prefer native.
qdvd: No longer prefer native.
wmvcore: No longer prefer native.
wmp: No longer prefer native.
d3dcompiler: No longer prefer native.
d3dx9: No longer prefer native.
d3dx10: No longer prefer native.
d3dx11: No longer prefer native.
bluetoothapis: No longer prefer native.
dcomp: No longer prefer native.
dxva2: No longer prefer native.
fltlib: No longer prefer native.
pdh: No longer prefer native.
virtdisk: No longer prefer native.
winsta: No longer prefer native.
sfc: No longer prefer native.
sfc_os: No longer prefer native.
sas: No longer prefer native.
fwpuclnt: No longer prefer native.
d3dim: No longer prefer native.
d3dim700: No longer prefer native.
tdh: No longer prefer native.
rtutils: No longer prefer native.
quartz/tests: Use %I64.
quartz: Use %I64.
qasf/tests: Use %I64.
qcap/tests: Use %I64.
qedit/tests: Use %I64.
amstream/tests: Use %I64.
amstream: Use %I64.
Esme Povirk (1):
configure: Document the other --enable-archs values.
Feifan He (1):
winemac: Handle reset parameter in ClipCursor.
Francis De Brabandere (21):
vbscript/tests: Add tests for ExecuteGlobal re-Dim of an existing array.
vbscript: Reject re-Dim of an existing global array with err 13.
vbscript/tests: Add tests for Cxxx coercion of Null and Nothing.
vbscript: Raise err 94 on Cxxx(Null) and err 91 on Cxxx(Nothing).
vbscript/tests: Add tests for And/Or/Imp with BSTR operands.
vbscript: Coerce BSTR operands of And/Or/Imp to number-or-Boolean.
vbscript/tests: Add tests for ReDim on class member arrays.
vbscript: Mark class member fixed-size arrays as FADF_FIXEDSIZE.
vbscript/tests: Add tests for UBound/LBound on non-array arguments.
vbscript: Match native error codes for non-array arguments to UBound/LBound.
vbscript: Parse octal numeric literals (&O...).
vbscript: Parse double literals via ucrtbase _wcstod_l.
vbscript/tests: Add tests for declaration scope in redefinition checks.
vbscript: Check top-level name redefinition against global scope only.
scrrun/tests: Add test for hashing failure of a degenerate object key.
scrrun/dictionary: Report key-hashing failures from lookups.
vbscript/tests: Add tests for error reporting from a GetRef reference.
vbscript: Run a script-invoked function reference as an internal call.
vbscript/tests: Note the error HRESULT seen by an external caller.
vbscript/tests: Add tests for class members sharing a global Dim/Const name.
vbscript: Compile class members in a separate namespace from globals.
Hans Leidekker (3):
include: Update CERT_KEY_CONTEXT.
msctf: Add a stub implementation of ITfFnReconversion.
odbc32: Add support for driver connection attributes.
Henri Verbeet (1):
wined3d: Remove the "more than one back buffer" FIXME from wined3d_swapchain_init().
Huw D. M. Davies (1):
hal: Fix #endif guard comment.
Ivan Ivlev (1):
oleaut32: Initialize page_info in OleCreatePropertyFrameIndirect.
Jacek Caban (4):
ntdll: Don't hold the InSyscallCallback flag during the NtReadFile syscall.
ntdll: Use cooperative suspend for syscall callbacks.
ntdll/tests: Add tests for suspending ARM64EC syscall callbacks.
ntdll: Allow calling NtContinue in syscall callbacks.
Joerg Rueppel (1):
d3dxof: Pad with magic value before object data in parse_object().
Jon Koops (2):
dsound: Get rid of DirectSoundDevice reference counting.
dsound: Remove unused DSOUND_renderers list and lock.
Kun Yang (2):
kernel32/tests: Add a test for ReplaceFileW.
kernelbase: Fail in ReplaceFileW when replaced file is a directory.
Marc-Aurel Zent (2):
winemac: Set IME open status depending on HKL.
imm32: Fix ime_ui_notify() TRACE log.
Matteo Bruni (6):
win32u: Tweak a couple of comments.
win32u: Simplify layout name generation for base keyboard layouts.
winex11: Keep a list of every known Xkb keyboard layout.
winex11: Store Xkb keyboard layout KLID.
winex11: Store Xkb keyboard layout id.
dsound: Get rid of the all_stopped argument.
Matthias Gorzellik (1):
kernelbase: Add null check for str in OutputDebugStringW.
Nikolay Sivov (10):
msxml3: Add a root element helper.
msxml3: Add a helper to get last child node.
msxml3: Expose previous sibling helper.
msxml3: Mark namespace declaration nodes on creation.
msxml3: Add implicit 'xml' namespace as document attribute.
msxml3: Reimplement XPath support without libxml2.
msxml3: Properly free parsed selection namespaces (ASan).
msxml3/sax: Fix UTF-16 BE decoder.
msxml3/sax: Remove commented out code.
oleaut32/tests: Use correct symbol for the Seek() argument.
Paul Gofman (4):
ws2_32/tests: Test select() with valid but non-socket handle.
ws2_32: Return WSAENOTSOCK instead of WSAENOTSUPP from select() when trying to select on non-socket handle.
wined3d: Handle data aliasing when blitting to itself with FX transforms.
msctf: Return stub interface from ThreadMgr_GetFunctionProvider().
Piotr Caban (12):
uuid: Add IID_IEnterActivityWithNoLock.
uuid: Add IID_ICallbackWithNoReentrancyToApplicationSTA.
combase: Share context token between MTA threads.
combase: Add IComThreadingInfo::SetCurrentLogicalThreadId implementation.
ole32: Add IRundown interface definition.
combase: Add IRundown interface stub.
combase: Implement IContextCallback::ContextCallback.
ole32: Add IContextCallback::ContextCallback tests.
combase: Enable remoting for STA threads in CoWaitForMultipleHandles.
wbemprox: Fix Win32_OperatingSystem.TotalVirtualMemorySize value.
wbemprox: Fix Win32_OperatingSystem.FreeVirtualMemory value.
msxml3: Fallback to UTF-8 encoding if detection fails.
Robert Gerigk (8):
ntoskrnl: Store DEVPKEY_Device_Parent when enumerating child devices.
ntoskrnl/tests: Add DEVPKEY_Device_Parent test.
ntoskrnl: Store DEVPKEY_Device_Children on parent after bus enumeration.
ntoskrnl/tests: Add DEVPKEY_Device_Children test.
ntoskrnl: Store DEVPKEY_Device_Siblings on each child after bus enumeration.
ntoskrnl/tests: Add DEVPKEY_Device_Siblings test.
cfgmgr32: Implement CM_Get_Parent using DEVPKEY_Device_Parent property.
ntoskrnl/tests: Test CM_Get_Parent on the PnP-managed child device.
Rose Hellsing (2):
riched20: Implement EM_LINELENGTH with wParam==-1.
riched20/tests: Add EM_LINELENGTH(-1) tests.
Rémi Bernon (22):
win32u: Handle menu name ansi conversion on the PE side.
win32u: Simplify window class menu name management.
win32u: Avoid leaking user lock on NtUserGetClassInfoEx error.
win32u: Simplify internal small class icon creation.
win32u: Allow OpenGL context / HDC pixel format mismatch.
server: Move shared memory initialization out of create_class.
server: Introduce a struct class_info to wrap window class info.
server: Move class window proc to the shared memory.
win32u: Move class cursor and background to shared memory.
win32u: Move window class icons to the shared memory.
win32u: Move window class menu names to the shared memory.
win32u: Keep track of the registered builtin class atoms.
win32u: Create FNID from the ntuser_client_procs enum.
win32u: Get rid of unnecessary private_off window field.
win32u: Move window info private len to window shared memory.
server: Use a dedicated request to set window builtin FNID.
win32u: Implement real class names using builtin class FNID.
user32: Add helpers to set static control state.
user32: Set builtin class FNID for button controls.
user32: Set builtin class FNID for combo controls.
user32: Set builtin class FNID for edit controls.
user32: Set builtin class FNID for listbox controls.
Shaun Ren (2):
mf/tests: Add some further tests for the presentation clock's SetTimer().
mf/clock: Insert timers in chronological order in present_clock_timer_SetTimer().
Stefan Dösinger (2):
shell32: Add an Info icon.
shell32: Use IDI_SHELL_INFO icon for SIID_INFO.
Stian Low (1):
wined3d: Add GPU information for Intel UHD 620 (0x5917).
Trent Waddington (1):
crypt32: CertContext_SetProperty(CERT_NCRYPT_KEY_HANDLE_PROP_ID) takes a handle, not a pointer.
Twaik Yont (7):
wineandroid: Restrict Java keyboard focus to whole Wine views.
wineandroid: Focus the desktop view after creating it.
wineandroid: Ignore duplicate primary button motion events.
wineandroid: Create desktop view via ioctl and pass event pipe.
wineandroid: Make JNI initialization work with direct JVM loading.
wineandroid: Terminate activity when desktop client disconnects.
wineandroid: Split Android driver and Wine into separate processes.
Vibhav Pant (11):
winebth.sys: Fix potential NULL deref in bluez_gatt_characteristic_value_free.
winebth.sys: Push newly enumerated bluetooth devices directly to the watcher event queue.
winebth.sys: Factor code for handling new BlueZ objects into bluez_handle_new_object.
winebth.sys: Perform initial device enumeration inside a DBusPendingCall callback.
winebth.sys: Return the correct boolean value in bluez_gatt_characteristic_props_from_dict_entry.
windows.devices.bluetooth/tests: Add tests for IBluetoothLEDeviceStatics::FromBluetoothAddressAsync, IBluetoothLEDevice.
windows.devices.bluetooth: Implement BluetoothLEDeviceStatics::FromBluetoothAddressAsync.
windows.devices.bluetooth: Implement IBluetoothLEDevice::get_DeviceId.
windows.devices.bluetooth: Implement IBluetoothLEDevice::get_GattServices.
windows.devices.bluetooth: Implement IGattDeviceService::get_Uuid.
windows.devices.bluetooth: Implement IGattDeviceService::get_AttributeHandle.
Zhiyi Zhang (9):
winex11.drv: Return WithdrawnState when get_window_wm_state() fails.
winex11.drv: Wait for the previous request when transitioning from IconicState to NormalState.
ntdll: Add NtAlpcCreatePort() stub.
ntdll: Add NtAlpcConnectPort() stub.
ntdll: Add NtAlpcAcceptConnectPort() stub.
ntdll: Add NtAlpcSendWaitReceivePort() stub.
ntdll: Add NtAlpcDisconnectPort() stub.
ntdll: Add NtAlpcImpersonateClientOfPort() stub.
ntdll: Add missing ZwAlpc* function names.
Ziqing Hui (1):
dwrite: Add fallback for Miscellaneous Symbols.
```
1
0
The vkd3d team is proud to announce that release 2.0 of vkd3d, the 3D graphics
porting library, is now available.
The source is available from the following location:
<https://dl.winehq.org/vkd3d/source/vkd3d-2.0.tar.xz>
The current source can also be pulled directly from either of these git
repositories:
<https://gitlab.winehq.org/wine/vkd3d.git>
<https://codeberg.org/vkd3d/vkd3d.git>
Vkd3d is available thanks to the work of multiple people. See the file AUTHORS
for the complete list.
# What's new in vkd3d 2.0
### libvkd3d
- Resources with a combined depth/stencil format like
DXGI_FORMAT_R32G8X24_TYPELESS can be created without the
D3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL flag being set. It's somewhat rare
for applications to create such resources; typically resources with a
combined depth/stencil format are either used with both a depth/stencil view
and a shader resource view, or exclusively with a depth/stencil view.
- The syntax for the VKD3D_DEBUG environment variable has been extended to
allow more precise control over the debug output. See the ‘Environment
variables’ section of the README for a description of the extended syntax.
### libvkd3d-shader
- New features and improvements for the HLSL source type:
- Store operations to structured thread group shared memory.
- Interlocked operations on structured and/or arrayed unordered access views
and thread group shared memory.
- A new common subexpression elimination optimisation pass.
- Initial support for loops in shader model 2-3 target profiles.
- More efficient usage of temporary registers, primarily due to improvements
to the register allocator and the introduction of an output write hoisting
pass. This is particularly relevant for shader model 1-3 target profiles,
where the number of temporary registers is relatively limited, and we may
otherwise not be able to compile some shaders.
- The tex3Dbias(), tex3Dlod(), and texCUBElod() intrinsic functions.
- The ‘SV_ClipDistance’ and ‘SV_CullDistance’ input/output semantics.
- The ‘SV_StencilRef’ pixel shader output semantic.
- Corrected handling of InterlockedMin() and InterlockedMax() operations on
inputs with differing signedness. When either of the inputs has an ‘uint’
type, the other is converted/promoted to ‘uint’ as well.
- The VKD3D_SHADER_COMPILE_OPTION_BACKCOMPAT_MAP_SEMANTIC_NAMES flag now
additionally maps the shader model 3 ‘VFACE’ and ‘VPOS’ semantic names to
their shader model 4+ equivalents.
- Constant folding of floating-point modulo expressions. I.e., ‘x % y’ where
‘x’ and ‘y’ are floating-point constants.
- The scope of variables declared in ‘for’ loop initialisation clauses has
been expanded to extend beyond the end of the loop. I.e.,
‘for (int i = 0; i < 10; ++i); return i;’ is valid HLSL. That's different
from e.g. C99, where the scope of ‘i’ would be limited to the loop.
- Floating-point literal parsing has been made independent of the current
locale. Previously, the HLSL parser would use the current locale's decimal
separator when parsing floating-point literals, instead of the HLSL
decimal separator, which is always the ‘.’ character. Note that this only
affects programs that set a locale other than the initial ‘C’ locale, for
example by calling the setlocale() function.
- New features and improvements for the effects (FX) source type:
- Parsing of operand indices in eval() block was broken and has been fixed.
- The ‘umod’ FXLVM operation is recognised.
- New features and improvements for the legacy Direct3D byte-code source type:
- The following instructions:
- m4x4, m3x4, m4x3, m3x3, and m3x2
- phase
- texdepth
- texreg2ar, texreg2gb, and texreg2rgb
- The ‘\_dz’, ‘\_db’, ‘\_dw’, and ‘\_da’ source modifiers. These are used
with the ‘texcrd’ and ‘texld’ instructions.
- The ‘vFace’ and ‘vPos’ pixel shader input registers.
- Shader model 3 vertex shader point size outputs. In shader model 1 and 2
point size output uses the ‘oPts’ output register; shader model 3 uses a
generic ‘o’ register with a ‘dcl_psize’ declaration.
- Shader model 1 and 2 vertex shader outputs are clamped to the 0 to 1
range.
- The DXIL source type supports forward-referencing pointers in load, store,
atomic read/modify/write, and compare/exchange operations.
- The DXIL source type supports pixel shader specified stencil reference
values.
- The experimental Metal Shading Language (MSL) target supports pixel shader
specified stencil reference values.
- The Direct3D shader assembly target supports 16-bit immediate constants.
These are typically produced by DXIL sources.
- The Direct3D shader assembly target supports the following global flags:
- ‘64UAVs’
- ‘ROVs’
- ‘UAVLoadAdditionalFormats’
- ‘UAVsAtEveryStage’
- ‘allResourcesBound’
- ‘enable11_1ShaderExtensions’
- ‘int64Ops’
- ‘nativeLowPrecision’
- ‘stencilRef’
- ‘viewportAndRTArrayIndex’
- ‘waveOps’
- New interfaces:
- The vkd3d_shader_scan_denormal_mode_info structure extends the
vkd3d_shader_compile_info structure, and can be used to retrieve the
denormal mode used for floating-point numbers.
- The VKD3D_SHADER_SPIRV_EXTENSION_KHR_FLOAT_CONTROLS enumeration value
indicates support for the SPV_KHR_float_controls extension in the SPIR-V
target environment.
- The VKD3D_SHADER_COMPILE_OPTION_DENORMAL_MODE_F16 compile option specifies
the denormal mode to use for 16-bit floating-point numbers.
- The VKD3D_SHADER_COMPILE_OPTION_DENORMAL_MODE_F32 compile option specifies
the denormal mode to use for 32-bit floating-point numbers.
- The VKD3D_SHADER_COMPILE_OPTION_DENORMAL_MODE_F64 compile option specifies
the denormal mode to use for 64-bit floating-point numbers.
- The VKD3D_SHADER_COMPILE_OPTION_CONST_GLOBAL_UNIFORMS flag specifies that
all uniforms with global scope should be considered ‘const’ in HLSL
sources.
- When targeting VKD3D_SHADER_API_2_0, compilation will fail when a required
floating-point denormal mode can't be specified in the target shader. For
the SPIR-V target, this requires the SPV_KHR_float_controls extension, as
well as the corresponding capabilities in the target environment. The
earlier mentioned compile options allow overriding the denormal modes
specified by the source shader.
- The syntax for the VKD3D_SHADER_DEBUG environment variable has been extended
to allow more precise control over the debug output. See the ‘Environment
variables’ section of the README for a description of the extended syntax.
### libvkd3d-utils
- The D3DCompile(), D3DCompile2(), D3DCompile2VKD3D(), and D3DPreprocess()
functions support using D3D_COMPILE_STANDARD_FILE_INCLUDE as include
handler.
- Unless the D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY flags is specified,
D3DCompile2VKD3D() will consider all uniforms with global scope to be
‘const’ for compiler versions 37 and up. This is also the case for
D3DCompile() and D3DCompile2(), which behave like compiler version 47.
### Changes since vkd3d 1.19:
```
Alistair Leslie-Hughes (2):
include: Define S_ISREG in vkd3d_shader_utils.h if needed.
vkd3d-utils: Include "direct.h" for getcwd() when building with the Wine/msvcrt headers.
Anna (navi) Figueiredo Gomes (8):
vkd3d-shader/tpf: Recognize the SV_ClipDistance and SV_CullDistance semantics.
tests/hlsl_d3d12: Add a Clip/Cull reflection test.
vkd3d-shader/hlsl: Group clip/cull registers together exclusively.
vkd3d-shader/tpf: Check the semantic index for clip/cull semantics.
vkd3d-shader/fx: Parse all indexes for eval() registers.
vkd3d-shader/fx: Add the "umod" fxlc opcode name.
vkd3d-shader/fx: Print "expr" registers without index.
vkd3d-shader/fx: Avoid ssize_t in fx_print_fxlc_argument().
Elizabeth Figura (48):
tests: Test unterminated #if.
vkd3d-shader/preproc: Print a warning when a macro in a directive is unterminated.
vkd3d-shader/preproc: Clean up directive_func at the end of parsing too.
vkd3d-shader/preproc: Constify a few macro pointers.
vkd3d-shader/preproc: Reset and cleanup the function state in more places.
vkd3d-shader/hlsl: Pass the resource load type to intrinsic_tex().
vkd3d-shader/hlsl: Implement tex3Dbias().
vkd3d-shader/hlsl: Implement tex3Dlod().
vkd3d-shader/hlsl: Implement texCUBElod().
tests/hlsl: Test specifying const on a cbuffer uniform.
vkd3d-shader/hlsl: Allow uninitialized const variables inside cbuffers.
vkd3d-shader/hlsl: Store the compatibility flags directly.
vkd3d-shader/hlsl: Introduce a compile option to make global uniform variables const.
vkd3d-utils: Enable VKD3D_SHADER_COMPILE_OPTION_CONST_GLOBAL_UNIFORMS where appropriate.
vkd3d-shader/hlsl: Convert constant vector indices to swizzles.
tests/hlsl: Avoid [require] in rt-get-sample-info.
tests/hlsl: Test swizzling done by sampleinfo.
vkd3d-shader/ir: Do not extend SSA liveness in loops more than necessary.
vkd3d-shader/d3dbc: Validate temporary register limits.
vkd3d-shader/d3dbc: Convert PHASE to NOP.
vkd3d-shader/ir: Lower _dw and _dz modifiers.
tests/shader_runner: Take hlsl_hrs into account when adding sm1/sm4/sm6 versions to the test mask.
vkd3d-shader/hlsl: Map VPOS to SV_Position for sm4.
vkd3d-shader/d3dbc: Lower vPos.
tests/hlsl: Test VPOS.
tests/shader_runner_d3d9: Implement support for depth resources.
vkd3d-shader/d3dbc: Add DEPTHOUT to io_dcls.
vkd3d-shader/d3dbc: Implement TEXDEPTH.
vkd3d-shader/ir: Add validation rules for TEXDEPTH.
vkd3d-shader/ir: Introduce vsir_register_type_get_name().
vkd3d-shader/ir: Introduce an output write hoisting pass.
vkd3d-shader/ir: Add traces to vsir copy propagation.
vkd3d-shader/hlsl: Handle HLSL_OP3_TERNARY in sm1_generate_vsir().
vkd3d-shader/hlsl: Handle HLSL_OP1_FLOOR in sm1_generate_vsir().
vkd3d-shader/hlsl: Handle HLSL_OP1_CEIL in sm1_generate_vsir().
tests/hlsl: Test VFACE.
vkd3d-shader/hlsl: Validate SV_IsFrontFace width.
vkd3d-shader/d3dbc: Lower vFace.
vkd3d-shader/hlsl: Rename convert_numeric_type() to hlsl_change_base_type() and use it in more places.
vkd3d-shader/hlsl: Map VFACE to SV_IsFrontFace for sm4.
vkd3d-shader/d3dbc: Move oPts/oFog scanning to d3dbc_scan_register().
vkd3d-shader/d3dbc: Fix a check for VKD3DSPR_COMBINED_SAMPLER in d3dbc_parse_operand().
vkd3d-shader: Fix TEXDEPTH write mask validation.
tests: Add d3dbc/texdepth to the tests list.
tests: Move bump.shader_test to d3dbc/.
tests/hlsl: Remove some unreachable todos from pixel-position.shader_test.
vkd3d-shader/hlsl: Use hlsl_clone_semantic() in hlsl_type_clone().
vkd3d-utils: Do not call ID3DInclude_Close() for NULL code.
Francisco Casas (46):
vkd3d-shader/hlsl: Identify user-provided int loop limiter uniforms.
vkd3d-shader/hlsl: Allocate a 255 int for SM3 loops without limiter.
vkd3d-shader/hlsl: Implement SM3 loops without user-provided int uniform limiters.
vkd3d-shader/hlsl: Generate SM1 break vsir instructions.
vkd3d-shader/d3dbc: Write REP, ENDREP, and BREAK instructions.
vkd3d-shader/d3dbc: Write DEFI instructions.
vkd3d-shader/ir: Allocate independent outpointid operands.
vkd3d-shader/dxil: Allocate independent outpointid operands.
vkd3d-shader/dxil: Allocate new indirect indices when copying template operands.
vkd3d-shader/ir: Validate that source operands are referenced only once.
tests/hlsl: Test out-of-bounds vector indexing.
tests/hlsl: Add scope tests for 'for' loop initializers.
vkd3d-shader/hlsl: Declare vars on loop initialization as outside the loop.
vkd3d-shader/ir: Clone rel_addrs for second use of SRC0 in vsir_program_lower_lrp().
vkd3d-shader/ir: Clone rel_addrs for second use of SRC1 in vsir_program_lower_pow().
vkd3d-shader/ir: Clone rel_addrs for multiple uses of SRC in vsir_program_lower_texbem().
vkd3d-common: Track the debug level per translation unit.
vkd3d-common: Introduce debug classes.
vkd3d-common: Introduce debug channels.
vkd3d-shader/hlsl: Use a separate debug channel for copy propagation traces.
tests/hlsl: Test COLOR semantic clamping on shader model 2.0.
tests/hlsl: Test COLOR semantic clamping on shader model 1.0.
vkd3d-shader/ir: Clamp COLOR outputs on vs_2_0 and lower.
tests/d3dbc: Add tests for m4x4, m3x4, m4x3, m3x3, and m3x2.
vkd3d-shader/d3dbc: Record multiple registers for mNxN instructions.
vkd3d-shader/ir: Lower mNxN instructions.
vkd3d-shader/ir: Support indirect addressing on mNxM instructions.
tests/shader-runner: Support the r8g8b8a8-unorm format.
tests/d3dbc: Test the texreg2ar, texreg2gb, and texreg2rgb instructions.
vd3d-shader/ir: Support texreg2ar, texreg2gb, and texreg2rgb.
tests/hlsl: Test side-effects on for loop conditionals.
tests/hlsl: Test loops with limiters and a maximum number of iterations.
tests/hlsl: Test "i < limit" expressions inside loops.
tests/hlsl: Test d3dbc loops with a float iterator.
vkd3d-shader/hlsl: Detect limiters with a capped number of iterations.
vkd3d-shader/hlsl: Introduce a helper to identify "k < n" expressions.
vkd3d-shader/hlsl: Detect "i < n" limiter expressions with float iterators.
vkd3d-shader/hlsl: Avoid trying to create invalid dimension combined samplers.
vkd3d-shader/ir: Only extend liveness of temps that are accessed inside loops.
vkd3d-shader/ir: Extend the liveness of SSAs at all loop depth levels.
tests/shader_runner: Add support for d3dbc bool constants.
tests/d3dbc: Add some basic 'defb' instruction tests.
vkd3d-shader/d3dbc: Set .x swizzles on scalar immediate constants.
vkd3d-shader/ir: Record implicit writes for uninitialized temps in liveness tracking.
tests/hlsl: Add an additional const variable test.
vkd3d-shader/hlsl: Don't allow non-static initializations in is_static_expression().
Giovanni Mascellani (46):
vkd3d-shader/dxil: Emit loads in a fixup pass.
vkd3d-shader/dxil: Emit stores in a fixup pass.
vkd3d-shader/dxil: Emit atomic RMW operations in a fixup pass.
vkd3d-shader/dxil: Emit compare-exchange operations in a fixup pass.
vkd3d-shader/ir: Validate SV_VertexID system values.
vkd3d-shader/ir: Validate SV_RenderTargetArrayIndex system values.
vkd3d-shader/ir: Validate SV_ViewportArrayIndex system values.
vkd3d-shader/ir: Validate SV_Target system values.
tests/shader_runner_vulkan: Honor VKD3D_DISABLE_EXTENSIONS.
tests/vkd3d_shader_api: Initialize the OpenGL test context.
vkd3d-shader: Allow querying for the shader denormal mode while scanning.
vkd3d-shader: Allow overriding the denormal modes for a shader.
vkd3d-shader/spirv: Emit the denormal mode.
tests/hlsl: Test SV_VertexID and SV_InstanceID when they start from a non-zero value.
tests/hlsl: Test a DXIL shader with non-contiguous semantic indices.
tests/hlsl: Test LOD clamping.
tests/hlsl: Test using a load offset which is not an immediate constant.
tests/hlsl: Test sampling with invalid immediate offsets.
tests/hlsl: Test loading at coordinates that become out-of-bound after offsetting.
vkd3d-shader: Never try to emit denormal modes for API version <= 1.19.
vkd3d-shader/glsl: Error out when unable to handle the denormal mode.
vkd3d-shader/msl: Error out when unable to handle the denormal mode.
tests/vkd3d_shader_api: Test querying the denormal mode.
tests/hlsl: Avoid using "uint4" uniforms to set a single u32 cbv value.
tests/hlsl: Add a missing variable declaration in sampler-offset.shader_test.
tests/hlsl: Choose the matching RTV format for some tests in cbuffer.shader_test.
tests/hlsl: Choose the matching RTV format for some tests in uav-rwbuffer.shader_test.
tests/hlsl: Choose the matching RTV format for a test in bitwise.shader_test.
tests/shader_runner_metal: Enable atomic operations for formats that support them.
tests/shader_runner_metal: End messages with a newline if there isn't one already.
tests/shader_runner_metal: Support multiple viewports.
tests/shader_runner_metal: Enable viewport and render target array indices.
tests/hlsl: Run the render target sample position test for all shader models.
tests/hlsl: Work around a test failure on AMD in rt-get-sample-info.shader_test.
tests/hlsl: Test GetRenderTargetSampleCount() on a non-multisampled render target.
tests/hlsl: Run descriptor tests for both shader models 6.0 and 6.6.
tests/hlsl: Check WaveActiveAllEqual()'s behavior with floating-point comparisons.
tests/hlsl: Test a combined sampler with an invalid sampler dimension.
tests/hlsl: Test sampling a texture array with a fractional array index.
tests/hlsl: Add a simple test for SV_Barycentrics.
tests/shader_runner: Create buffers of the size specified in their description.
tests/hlsl: Test rasterizer ordered views on typed and raw buffers too.
tests/hlsl: Test the value returned by UAV counter update instructions.
tests/hlsl: Fix the render target format for cast-to-int.shader_test.
tests/hlsl: Fix the render target format for cast-to-uint.shader_test.
tests/hlsl: Fix the render target format for srv-buffers.shader_test.
Henri Verbeet (80):
tests/shader_runner_gl: Allow unused input elements.
vkd3d-shader/d3d-asm: Handle VSIR_DATA_BOOL immediate constants.
vkd3d-shader/d3d-asm: Handle VSIR_DATA_F16 immediate constants.
vkd3d-shader/d3d-asm: Handle VSIR_DATA_I16 immediate constants.
vkd3d-shader/d3d-asm: Handle VSIR_DATA_U16 immediate constants.
vkd3d-shader/d3d-asm: Give global flags their own colour.
vkd3d-shader/d3d-asm: Recognise the "enable11_1ShaderExtensions" global flag.
vkd3d-shader/d3d-asm: Recognise the "allResourcesBound" global flag.
vkd3d-shader/d3d-asm: Recognise the "viewportAndRTArrayIndex" global flag.
vkd3d-shader/d3d-asm: Recognise the "UAVLoadAdditionalFormats" global flag.
vkd3d-shader/d3d-asm: Give data types their own colour.
vkd3d-shader/hlsl: Implement constant folding of floating-point modulo expressions.
vkd3d-shader/d3d-asm: Recognise the "ROVs" global flag.
vkd3d-shader/d3d-asm: Recognise the "waveOps" global flag.
vkd3d-shader/d3d-asm: Recognise the "int64Ops" global flag.
vkd3d-shader/d3d-asm: Recognise the "nativeLowPrecision" global flag.
vkd3d-shader/hlsl: Properly compare hlsl_constant_value_component values in find_constant().
tests/hlsl: Use single-component UAVs in rasteriser-ordered-views.shader_test.
vkd3d-shader/spirv: Ignore VKD3DSGF_SKIP_OPTIMIZATION.
vkd3d-shader/spirv: Only warn about VKD3DSGF_ENABLE_MINIMUM_PRECISION.
vkd3d-shader/spirv: Ignore VKD3DSGF_ENABLE_VP_AND_RT_ARRAY_INDEX.
vkd3d-shader/spirv: Handle VKD3DSGF_ENABLE_RELAXED_TYPED_UAV_FORMATS.
vkd3d-shader/spirv: Ignore VKD3DSGF_ENABLE_UAVS_AT_EVERY_STAGE.
vkd3d-shader/spirv: Ignore VKD3DSGF_ENABLE_RASTERIZER_ORDERED_VIEWS.
vkd3d-shader/spirv: Output errors for unhandled global flags.
vkd3d-shader/ir: Rename struct vkd3d_shader_register to struct vsir_operand.
vkd3d-shader/d3d-asm: Recognise the "UAVsAtEveryStage" global flag.
vkd3d-shader/spirv: Return void from spirv_compiler_emit_alu_instruction().
vkd3d-shader/dxil: Free the fixup list in sm6_parser_cleanup(). (Valgrind)
vkd3d-shader/hlsl: Free "allocator_constint" allocations as well in allocate_const_registers(). (Valgrind)
vkd3d-shader/dxil: Preserve f16 denormals if they're used in the shader.
tests/d3d12: Test depth/stencil SRV resource creation.
vkd3d: Retry depth/stencil formats after checking vkd3d_formats[] in vkd3d_get_format().
tests/shader_runner_vulkan: Maintain our own format mapping.
tests/hlsl: Add a stencil clear/copy/load test.
vkd3d-shader/ir: Rename struct vkd3d_shader_register_index to struct vsir_register_index.
tests/shader_runner: Always add the minimum shader model to the runner mask.
tests/hlsl: Add a stencil export test.
vkd3d-shader/d3d-asm: Recognise the "stencilRef" global flag.
vkd3d-shader/spirv: Ignore VKD3DSGF_ENABLE_STENCIL_REF in spirv_compiler_emit_global_flags().
vkd3d-shader/dxil: Handle SV_StencilRef outputs.
vkd3d-shader/ir: Rename struct vkd3d_shader_register_range to struct vsir_register_range.
vkd3d: Use vkCmdCopyImage() to copy a subset of the source aspects in d3d12_command_list_CopyResource().
vkd3d-shader/tpf: Apply VKD3D_SM4_GLOBAL_FLAGS_MASK when writing dcl_globalFlags.
vkd3d-shader/hlsl: Handle SV_StencilRef.
build: Strip "@srcdir@/" from paths in the documentation.
vkd3d-shader/msl: Implement support for VKD3DSPR_OUTSTENCILREF registers.
vkd3d-shader/ir: Handle more immediate constant data types in vsir_operand_compare().
vkd3d-shader: Pass the calling function name to vkd3d_shader_vnote().
vkd3d-shader: Pass the calling function name to vkd3d_shader_vwarning().
vkd3d-shader: Pass the calling function name to vkd3d_shader_verror().
vkd3d-shader/fx: Pass the calling function name to fx_parser_error().
vkd3d-shader/glsl: Pass the calling function name to vkd3d_glsl_compiler_error().
vkd3d-shader/hlsl: Pass the calling function name to hlsl_error().
vkd3d-shader/msl: Pass the calling function name to msl_compiler_error().
vkd3d-shader/preproc: Pass the calling function name to preproc_error().
vkd3d-shader/spirv: Pass the calling function name to spirv_parser_error().
vkd3d-shader/spirv: Pass the calling function name to spirv_compiler_error().
vkd3d-shader/tpf: Pass the calling function name to tpf_compiler_error().
vkd3d-shader: Pass the calling function name to vkd3d_shader_parser_error().
vkd3d-shader: Pass the calling function name to vkd3d_shader_scan_error().
tests/vkd3d_shader_api: Add a test for HLSL floating-point parsing.
tests/tpf: Add a test for the "allResourcesBound" global flag.
vkd3d-shader/spirv: Ignore VKD3DSGF_BIND_FOR_DURATION in spirv_compiler_emit_global_flags().
vkd3d-shader/glsl: Ignore VKD3DSGF_BIND_FOR_DURATION in shader_glsl_handle_global_flags().
vkd3d-shader/msl: Ignore VKD3DSGF_BIND_FOR_DURATION in msl_generator_generate().
vkd3d-shader/ir: Avoid leaking the CSE expression in vsir_program_cse(). (Valgrind)
vkd3d-shader/fx: Cleanup the vsir program on failure in write_shader_blob(). (Valgrind)
tests/hlsl_d3d12: Avoid leaking the "errors" blobs in test_default_include_path(). (Valgrind)
tests/vkd3d_shader_api: Avoid leaking "dxc_compiler" in test_query_denormal_mode(). (Valgrind)
vkd3d: Explicitly use the "ANY" denormal mode in create_shader_stage().
vkd3d-compiler: Explicitly use the "ANY" denormal mode.
tests/shader_runner_vulkan: Explicitly use the "ANY" denormal mode.
build: Use a more elaborate check for _strtod_l()/_strtof_l()/strtof_l().
vkd3d-shader: Document the VFACE and VPOS semantic mappings.
vkd3d-shader/dxil: Get rid of the now unused "is_back_ref" field from struct sm6_value.
tests/hlsl_d3d12: Properly cleanup temporary files.
tests/hlsl: Port test_resource_arrays() from d3d12.c.
vkd3d-shader/d3d-asm: Recognise the "64UAVs" global flag.
vkd3d-shader/spirv: Ignore VKD3DSGF_ENABLE_UP_TO_64_UAVS in spirv_compiler_emit_global_flags().
Ivan Lyugaev (1):
vkd3d-shader/hlsl: Make floating-point number parsing independent of the locale.
Nikolay Sivov (1):
vkd3d-shader/hlsl: Make sure buffer sizes are reset before allocations are evaluated.
Shaun Ren (36):
tests/shader_runner: Introduce the shader_model field in struct shader_runner.
tests/shader_runner: Introduce the should_skip_execution() and get_runner_test_mask() helpers.
tests/shader_runner: Add a "test-shader-models" header directive.
tests/hlsl: Test SM2 and SM3 in shader-point-size.shader_test.
vkd3d-shader/ir: Set a constant semantic name for uninitialized outputs in vsir_program_remap_output_signature().
vkd3d-shader/ir: Support PSIZE outputs in SM3 vertex shaders.
vkd3d-shader/hlsl: Fix structured copy splitting in split_resource_load().
vkd3d-shader/hlsl: Lower stores to resources to resource stores during HLSL codegen.
vkd3d-shader/hlsl: Support indexed and structured TGSM stores in lower_resource_stores().
vkd3d-shader/hlsl: Generate indexed and structured TGSM stores in VSIR.
tests/hlsl: Test SM4 and SM5 in uav-atomics.shader_test.
vkd3d-shader/hlsl: Correct InterlockedMin()/InterlockedMax() sign conversion behaviour.
tests/hlsl: Add some interlocked tests with typed and structured UAV targets.
tests/hlsl: Add some interlocked tests with indexed TGSM targets.
tests/shader_runner: Prevent a skipped section from skipping subsequent sections.
vkd3d-shader/hlsl: Determine the TGSM status of variables in hlsl_emit_vsir().
vkd3d-shader/hlsl: Disallow declaring global variables as both uniform and groupshared.
vkd3d-shader/fx: Support compute shaders in get_fx_4_type_name().
vkd3d-shader/hlsl: Support compute shaders in hlsl_new_compile().
tests/hlsl: Add some compute shader effect tests.
vkd3d-shader/hlsl: Validate group barrier calls in sm4_generate_vsir_instr_sync().
vkd3d-shader/hlsl: Allow TGSM resource loads in split_matrix_copies().
vkd3d-shader/hlsl: Introduce the resolve_assignment_lhs() helper.
vkd3d-shader/hlsl: Introduce the resource_access_from_deref() helper.
vkd3d-shader/hlsl: Support interlocked operations with indexed or structured targets.
tests/hlsl: Test additional combinations of declarations on for loops.
tests/hlsl: Add an effect compile test with multiple compute shaders.
tests/hlsl: Add an effect compile test with geometry shaders.
vkd3d-shader/hlsl: Reset entry function related attributes in hlsl_emit_vsir().
vkd3d-shader/fx: Support hull and domain shaders in get_fx_4_type_name().
vkd3d-shader/hlsl: Support hull and domain shaders in hlsl_new_compile().
tests/hlsl: Add some effect compile tests with hull and domain shaders.
vkd3d-shader/hlsl: Introduce the hlsl_ctx_init_entry_function_attributes() helper.
vkd3d-shader/hlsl: Initialize all attributes in hlsl_ctx_entry_function_attributes().
vkd3d-shader/ir: Copy-propagate SSAs to relative addresses.
vkd3d-shader/ir: Add a common subexpression elimination pass for vsir.
Victor Chiletto (2):
vkd3d-shader: Introduce vkd3d_shader_code_from_file().
vkd3d-utils: Handle D3D_COMPILE_STANDARD_FILE_INCLUDE.
```
1
0