Wine-Announce
Threads by month
- ----- 2026 -----
- 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
May 2026
- 1 participants
- 4 discussions
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
The Wine development release 11.9 is now available.
What's new in this release:
- Bundled SQLite library.
- Initial support for system threads.
- Thread suspension in emulated code on ARM64.
- More VBScript compatibility improvements.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/11.x/wine-11.9.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.9/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 11.9 (total 24):
- #36484 Lotus Notes 8.x installer aborts with SAX parser exception (line breaks not preserved)
- #53317 Logos 9: Crash When Indexing: Invalid String Format
- #53551 Unable to run a hello world console program: unhandled page fault
- #53637 WinSCP UI rendering issue
- #53877 vbscript compile_assignment assertion when assigning multidimensional array by indices
- #54177 vbscript fails to compile sub call when argument expression contains multiplication
- #56281 vbscript: String number converted to ascii value instead of parsed value
- #57852 rebase (tool from the Windows SDK) crashes on unimplemented function imagehlp.dll.ReBaseImage64
- #58125 Homesite 5.5 installer's progress bar misses its outline
- #58925 GOM Player: UI elements not responding to mouse clicks
- #59011 Wargaming Game Center Window not appearing / invisible
- #59028 Graphpad Prism 9: project (.pzfx) files cannot be saved if msxml6 is not installed
- #59409 msvcrt: scanf scanset character ranges with high bytes (\x80-\xff) broken due to signed char comparison in scanf.h
- #59425 GXSCC crashes when a valid MIDI file is dragged in its window
- #59611 ExamDiff Pro Fileeditor blocks on end of file
- #59672 winhttp: DOAXVV fails with error 9003 at title screen
- #59689 SEC_WINNT_AUTH_IDENTITY_EX support in AcquireCredentialsHandle
- #59690 Both Command & Conquer 3 and Command & Conquer Red Alert 3 show the same kind of error
- #59708 d3d9: missing MSVC vtable byte-pattern
- #59718 d2d1: Three correctness issues in arc Bezier-approximation code (d2d_arc_to_bezier, d2d_figure_add_arc, d2d_arc_transform)
- #59722 RemoveDirectoryW fails with ERROR_SHARING_VIOLATION after subprocess exit
- #59729 Volumes do not report FILE_SUPPORTS_OPEN_BY_FILE_ID
- #59743 regression: Wine crashes / segmentation fault's when starting Photoshop CS 2
- #59746 SteelSeries GG 110.0 crashes on startup in .NET System.Security.Cryptography.X509Certificates.CertificateRequest..ctor
### Changes since 11.8:
```
Alexandre Julliard (36):
ntdll: Add a helper function to create a thread on the server side.
ntdll: Add a helper function to create a thread with pthread.
ntdll: Move single-step handling to the SIGTRAP handler.
ntdll: Don't allow getting/setting the context for threads without a TEB.
ntdll: Don't try to return from syscall for threads without a TEB.
ntdll: Handle signals in thread without a TEB.
ntdll: Don't raise an exception for threads without a TEB.
ntdll: Support last error functions in threads without a TEB.
ntdll: Pass the thread data explicitly in a few more functions.
ntdll: Store the initial suspend flag in the thread data.
ntdll: Move all the thread initialization into server_init_thread().
ntdll: Export PsCreateSystemThread.
server: Add support for system threads.
server: Don't return system threads in enumerations.
server: Don't allow accessing the context of system threads.
server: Don't send debug events for system threads.
server: Fix crash on invalid thread handle.
ntdll: Return explicit load order when checking version heuristics.
ntdll: Add builtin heuristics for Twain dll.
winemac: Use pthread instead of the TEB to access per-thread data.
winex11: Use pthread instead of the TEB to access per-thread data.
ntdll: Always get the 64-bit TEB from the 32-bit one.
ntdll: Pass the thread data to get_cpu_area().
ntdll: Add a helper function to initialize a CLIENT_ID structure.
winealsa.drv: Move zero_bits initialization to the wow64 attach callback.
winecoreaudio.drv: Move zero_bits initialization to the wow64 attach callback.
wineoss.drv: Move zero_bits initialization to the wow64 attach callback.
winepulse.drv: Move zero_bits initialization to the wow64 attach callback.
kernel32/tests: Adapt sort order test for Japanese and Korean.
kernel32/tests: Remove a sorting test that depends on Windows version.
kernel32/tests: Fix some geo name tests on latest Windows.
kernelbase: Don't store invalid geo names in the registry.
kernelbase: Implement GetGeoInfo(GEO_NAME).
kernelbase: Implement GetGeoInfo(GEO_RFC1766).
kernelbase: Implement GetGeoInfo(GEO_LCID).
kernelbase: Partially implement GetGeoInfo(GEO_FRIENDLYNAME).
Alistair Leslie-Hughes (5):
propsys: Only trace Properties that cannot be found.
include: Add struct SHARDAPPIDINFOLINK.
include: Add JOB_STATUS_RESTART define.
include: Add define WC_NETADDRESS.
msado15: Correctly increase the cnt value.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Bernhard Übelacker (4):
windows.ui.core.textinput/tests: Move Release below check_interface.
kernelbase: Run conhost.exe from c:\windows\system32 directory.
ntdll: Use debugstr_wn instead of debugstr_w in nt_to_unix_file_name.
winex11.drv: Use hwnd_drop instead of hwnd in x11drv_dnd_drop_event.
Brendan McGrath (2):
mf: Remove periodic callback on clock shutdown.
mf: Call GetCorrelatedTime without critical section.
Brendan Shanks (3):
ntdll: Always synthesize ESR in SIGTRAP handler on ARM64 Linux.
ntdll/tests: Test unaligned access on ARM64.
ntdll: Add constants/helpers, and be more explicit when parsing the ARM64 ESR.
Conor McCarthy (12):
mf/tests: Test optional topology nodes.
mf/topology_loader: Resolve topologies by walking down from each source node.
mf/topology_loader: Try to insert optional nodes after resolving the surrounding branch.
mf/tests: Add asynchronous transform tests.
mf/session: Support asynchronous transforms.
mf/tests: Test for preroll support in the sample grabber.
mf/tests: Test preroll notification when the rate has not been set.
mf/session: Initialise the stored presentation rate.
mf/scheme_handler: Call PathCreateFromUrlW() for URL to path conversion.
mfplat/tests: Create the new file in the temp path in test_file_stream().
mfplat/tests: Test leading forward slashes and colons in filename URLs.
mfplat: Normalise URLs before passing to BeginCreateObject().
Dan Ginovker (1):
d3d9: Add a fake d3d9 device vtbl initialization sequence.
Dmitry Timoshkov (4):
wineboot: Run services.exe from c:\windows\system32 directory.
adsldp: Add support for ADS_OPTION_REFERRALS.
crypt32: Use case-insensitive comparison for registered OID names.
adsldp: Add support for ADS_SEARCHPREF_CHASE_REFERRALS.
Esme Povirk (2):
win32u: Support OBJID_CLASSNAMEIDX in scrollbar controls.
wbemprox: Stub Win32_DiskDrive TotalHeads and Signature properties.
Francis De Brabandere (35):
vbscript/tests: Add coverage for BSTR vs numeric comparison.
vbscript/tests: Cover BSTR comparison with VT_BYREF and additional numeric VTs.
vbscript/tests: Cover BSTR comparison literal vs non-literal dispatch.
vbscript: Match native BSTR-vs-numeric and BSTR-vs-Boolean comparison.
vbscript/tests: Cover BSTR comparison with dispatch-only numeric VTs.
vbscript: Reject Automation types not supported in VBScript on compare.
vbscript/tests: Cover bare match.SubMatches(N) indexing.
vbscript: Implement DateValue and TimeValue functions.
vbscript/tests: Cover non-literal numeric vs whitespace-only and control-char BSTR.
vbscript: Treat all-whitespace and control-char BSTR as greater than numeric.
vbscript: Return subscript-out-of-range from UBound/LBound on uninitialized array.
vbscript: Return Null from Day/Month/Year/Hour/Minute/Second on Null operand.
vbscript: Handle Null operands in Left().
vbscript: Return the script class name from TypeName() on a class instance.
oleaut32: Fix Null handling in VarAnd.
oleaut32: Fix VT_CY Null handling in VarImp.
oleaut32: Fix VT_DATE Null handling in VarImp.
vbscript: Match native UI1 Imp Null behavior.
vbscript/tests: Add Null handling smoke tests for logical operators.
vbscript/tests: Cover Dim/Sub shadowing of host members.
vbscript: Coerce VT_EMPTY operands before Var* calls.
vbscript: Support assignment to chained array index expressions.
vbscript: Implement DateDiff built-in function.
vbscript/tests: Cover empty parens on properties, Dim variables, and arrays.
vbscript: Raise illegal-func-call on empty parens of class variant property.
vbscript: Delegate do_icall is_call branch to variant_call.
vbscript/tests: Cover top-level Const behavior.
vbscript/tests: Cover cross-parse name redefinition semantics.
vbscript: Match native cross-parse name redefinition rules.
vbscript: Implement IDispatch::GetTypeInfo for class instances via ICreateTypeLib2.
vbscript: Fix crash on fixed-size Dim array inside Execute called from a local scope.
vbscript/tests: Add tests for BSTR vs numeric/bool with neither side literal.
vbscript: Treat non-literal BSTR as greater than non-literal numeric/bool.
vbscript/tests: Add tests for &H8000 literal type.
vbscript: Parse &H8000 as Long(-32768) like native.
Georg Lehmann (1):
winevulkan: Update to VK spec version 1.4.350.
Giang Nguyen (3):
d2d1: Fix coordinate in arc-to-bezier conversion for degenerate case.
d2d1: Fix arc center translation in arc-to-bezier conversion.
d2d1: Do not translate radius vectors in arc-to-bezier conversion.
Hans Leidekker (3):
winhttp: Don't buffer more than one chunk.
winhttp: Always queue async writes.
msv1_0: Handle SEC_WINNT_AUTH_IDENTITY_EX.
Ivan Ivlev (3):
winmm/tests: Use non-static struct to avoid clang compilation errors.
vccorlib140/tests: Use non-static objects to avoid clang compilation errors.
dmsynth/tests: Use macro instead of static function to avoid clang compilation errors.
Jacek Caban (25):
advapi32/tests: Remove unused variable.
kernel32/tests: Avoid unused variables.
server: Store the client page size in the process struct.
ntdll/tests: Avoid unused global variables in exception.c.
ntdll/tests: Avoid unused global variables in wow64.c.
ntdll/tests: Avoid unused global variables.
gitlab: Update to llvm-mingw 20260505.
msvcrt: Provide trunc in the import library.
keyboard.drv: Remove unused global variables.
mouse.drv: Remove unused global variable.
win87em: Remove unused global variables.
comctl32/tests: Avoid unused global variables.
localui/tests: Remove unused global variables.
secur32/tests: Directly use secur32 functions in main.c.
kerberos: Remove unused variable.
msv1_0: Remove unused variables.
kernel32/tests: Avoid unused global variables on 32-bit ARM target.
mountmgr.drv: Avoid unused global variable.
ntdll: Avoid unused global variables.
ntdll/tests: Avoid unused global variables in wow64.c.
ntoskrnl/tests: Remove unused variable.
windows.media.speech/tests: Remove unused variables.
ntdll: Add support for ARM64EC cooperative suspend.
ntdll: Use unwind_context values only if the caller is not EC in capture_context.
ntdll/tests: Add SuspendDoorbell tests.
Joel Holdsworth (4):
ntdll/tests: Add test for FILE_SUPPORTS_OPEN_BY_FILE_ID in FileFsAttributeInformation.
ntdll: Report FILE_SUPPORTS_OPEN_BY_FILE_ID.
kernel32/tests: Add test for FILE_SUPPORTS_OPEN_BY_FILE_ID on volume handles.
mountmgr: Report FILE_SUPPORTS_OPEN_BY_FILE_ID.
Jon Koops (2):
dsound/tests: Test primary buffer independence across IDirectSound objects.
dsound: Create independent devices for each DirectSoundCreate call.
Luca Bacci (1):
msvcrt: Set errno in failure path.
Matteo Bruni (3):
winmm: Fix voicecom IMMDevice leak in device enumeration.
winmm/tests: Add some DRVM_MAPPER_CONSOLEVOICECOM_GET tests.
winmm/tests: Check that the preferred device is always at index 0.
Mykola Mykhno (2):
cmd: Update tests for parentheses in quoted parameter.
cmd: Remove parentheses from list of illegal characters for quote strip.
Nikolay Sivov (7):
msxml3: Fix missing document output in save().
msxml3/tests: Add some tests for cloning textual nodes.
msxml3: Clone textual contents when cloning nodes.
msxml3: Handle baseName property for entity references.
msxml3/tests: Remove some refcount tests.
msxml3/tests: Add a basic test for replaceChild() on attributes.
msxml3/tests: Add some tests for selecting from detached nodes.
Paul Gofman (16):
wininet/tests: Add a test for multiple server addresses.
wininet: Pass proxy server addr_str if present in open_http_connection().
wininet: Store server address related data in the new server_addr_t structure.
wininet: Enclose ipv6 address string in square brackets.
wininet: Introduce and use create_connect_socket().
wininet: Try to connect to multiple server addresses.
wininet: Do not force ipv4 addresses.
ws2_32/tests: Properly check for loopback address in test_gethostbyname().
ws2_32: Exclude not found and loopback addresses in get_local_ips() if others present.
win32u: Bump D3DKMT driver version.
ddraw/tests: Don't leak window and ddraw in test_d3d_state_reset() on ddraw2.
ddraw/tests: Add tests for clipper in exclusive fullscreen mode.
ddraw: Do not render to the clipping window in exclusive fullscreen mode.
winsqlite3: Import sqlite3 from upstream release 3.51.1.
include: Add winsqlite3.h.
winsqlite3/tests: Add a basic test.
Piotr Pawłowski (2):
comctl32/tests: Print id field of logged/expected messages on failure.
uxtheme/tests: Print id field of logged/expected messages on failure.
Rémi Bernon (5):
mf/topology_loader: Get rid of the topoloader_context.
mf/topology_loader: Clone and validate topology in a dedicated helper.
mf/topology_loader: Copy branches with cloned nodes before connecting.
mf/topology_loader: Add some sanity checks for optional output nodes.
mf/topology_loader: Force enumerate types when optional node method is set.
Sameer Singh (समीर सिंह) (2):
gdi32/uniscribe: Perform bounds check in insert_glyph().
gdi32/uniscribe: Resize the buffers if glyph count exceeds limit.
Sven Baars (1):
wine: Show all dlopen() error messages instead of just the last one.
Twaik Yont (5):
wineandroid: Add reply_fd plumbing to ioctl path.
wineandroid: Switch ioctl dispatch to socket transport on main thread looper.
wineandroid: Switch dequeueBuffer to socket transport.
wineandroid: Remove unixlib/ntoskrnl ioctl path.
wineandroid: Return ioctl errors directly.
Yuxuan Shui (1):
preloader: Account for ld.so stack usage when reserving.
Zakaria Habri (1):
winewayland: Use wp_pointer_warp_v1 for SetCursorPos when available.
Zhiyi Zhang (2):
include: Add D2D1_TURBULENCE_NOISE.
include: Add IDCompositionDevice3.
```
1
0
The Wine development release 11.8 is now available.
What's new in this release:
- Mono engine updated to version 11.1.0.
- More work on MSXML reimplementation without libxml2.
- Improved keyboard layout support using XKBRegistry.
- More VBScript compatibility improvements.
- Various bug fixes.
The source is available at <https://dl.winehq.org/wine/source/11.x/wine-11.8.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.8/AUTHORS
----------------------------------------------------------------
### Bugs fixed in 11.8 (total 22):
- #1201 Microsoft Golf 99 (Direct3D game) crashes on startup (IDirect3D::EnumDevices() needs to return the RGB device second)
- #32619 Tom Clancy's Rainbow Six: Lockdown can't save a game (directory not created)
- #39922 Hoot Sound Hardware Emulator: crashes on startup
- #42400 cscript.exe doesn't show errors
- #46107 Altium Designer 18.x - 20.x crashes on startup
- #46951 MSXML Multi line attribute value - #10 char lost
- #49908 vbscript: ExecuteGlobal is not implemented
- #50384 Visio 2013 fails to install with builtin msxml6
- #53844 vbscript invoke_vbdisp not handling let property correctly for VT_DISPATCH arguments
- #53889 vbscript does not support Get_Item call on IDispatch objects
- #53962 vbscript does not Eval implemented
- #54221 vbscript: missing support for GetRef
- #55006 vbscript: single line if else without else body fails compilation
- #57511 vbscript: For loop where loop var is not defined throws error without context
- #58248 vbscript: Me(Idx) fails to compile
- #59636 Petka crashes when starting a new game
- #59644 Enigma Virtual Box packed applications fail with file access errors since commit 35916176078
- #59645 FormatMessageW fails to format ERROR_NOT_A_REPARSE_POINT (4390) with error 317
- #59678 PLSQL Developer: Won't start on Wine 11.7
- #59684 ExamDiffPro now Crashes under 11.7
- #59689 SEC_WINNT_AUTH_IDENTITY_EX support in AcquireCredentialsHandle
- #59694 Assassin's Creed Shadows fails to start since Wine 11.4, after windows.media.speech changes
### Changes since 11.7:
```
Adam Markowski (4):
po: Update Polish translation.
po: Update Polish translation.
po: Update Polish translation.
po: Update Polish translation.
Alex Henrie (1):
imagehlp: Add ReBaseImage64 stub.
Alexandre Julliard (28):
ntdll: Merge signal_init_threading() and signal_init_process().
ntdll: Export RtlGetCurrentPeb() on the Unix side.
win32u: Use RtlGetCurrentPeb() on the Unix side.
winemac.drv: Use RtlGetCurrentPeb() on the Unix side.
winewayland.drv: Use RtlGetCurrentPeb() on the Unix side.
winex11.drv: Use RtlGetCurrentPeb() on the Unix side.
ntdll: Swap the FPU control word between PE and Unix on i386.
ntdll: Store the current process id in a global variable.
ntdll: Export PsGetCurrentProcessId() and PsGetCurrentThreadId() on the Unix side.
win32u: Silence a compiler warning.
ntdll: Add a helper to allocate the initial syscall frame.
ntdll: Allocate the kernel stack and signal stack together.
ntdll: Get the TEB from the Unix thread data.
ntdll: Move the exception jmp_buf to the Unix thread data.
ntdll: Move the thread start params to the Unix thread data.
ntdll: Move the server file descriptors to the Unix thread data.
ntdll: Move the allow write flag to the Unix thread data.
ntdll: Store the thread id in the Unix thread data.
ntdll: Move the TEB list entry to the Unix thread data.
ntdll: Use a separate debug_info structure on the kernel side.
ntdll: Use a consistent code pattern in all signal handler functions.
ntdll: Pass the thread data structure to signal handling helpers.
ntdll: Pass the thread data structure to inline helper functions.
ntdll: Return the thread data structure from init_handler() on i386.
ntdll: Return the thread data structure from init_handler() on x86-64.
ntdll: Retrieve the CPU-specific data from the thread data structure on i386.
ntdll: Retrieve the CPU-specific data from the thread data structure on x86-64.
ntdll: Rename ntdll_thread_data to teb_data.
Alistair Leslie-Hughes (1):
windows.ui.core.textinput: Add CoreTextServicesManager stubbed interface.
Antoine Leresche (2):
kernelbase: Add message string for errors 302-316.
kernelbase: Add message string for error 318-326.
Aurimas Fišeras (1):
po: Update Lithuanian translation.
Bartosz Kosiorek (5):
gdiplus: Add support to line alignment for GdipMeasureString.
gdiplus: Add support for PixelFormat 16bpp RGB565 and RGB555 to GdipGetNearestColor.
gdiplus: Initial implementation of GdipWarpPath.
gdiplus/tests: Extend GdipInitializePalette tests with transparent color.
gdiplus: Fix returned flags and add transparency to GdipInitializePalette.
Benoît Legat (1):
secur32: Fix handling by SChannel for CNG/NCrypt client certificates for mTLS.
Bernhard Kölbl (2):
windows.media.speech: Don't access the all voices vector view directly.
windows.media.speech: Fix a trace typo.
Brendan McGrath (6):
amstream/tests: Test enum media type with ddraw.
amstream/tests: Test enum media type whilst connected.
amstream/tests: Test enum media type on disconnect.
amstream: Return current format in media type enum.
amstream: Return connected media subtype in enum if connected.
mf: Handle no time and/or duration during markin.
Connor McAdams (10):
dinput: Only pass instance name string to device_instance_is_disabled().
dinput: Create a cache of currently connected HID joysticks.
dinput: Use joystick cache in hid_joystick_create_device().
dinput: Use joystick cache in hid_joystick_enum_device().
dinput: Return E_FAIL when opening a joystick device that is currently disconnected.
dinput: Create a version 1 UUID for dinput joystick devices.
dinput/tests: Add tests for dinput joystick IDs.
dinput: Add support for DIPROP_JOYSTICKID.
dinput/tests: Add tests for GUID_Joystick.
dinput: Add support for GUID_Joystick.
Conor McCarthy (15):
mf/tests: Test setting the input type on the topology loader test transform.
mf/topology_loader: Compare the current type with upstream on direct connection only for output nodes.
mf/tests: Check IsMediaTypeSupported() is always called on the topology loader test sink.
mf/topology_loader: Always call IsMediaTypeSupported() on downstream when connecting a branch.
gdiplus: Elide empty spans.
gdiplus/tests: Test a region intersect which produces empty spans.
mf/tests: Introduce a helper for creating an activated media sink.
mf/tests: Check for sample grabber sink shutdown.
mf/tests: Add tests for sample grabber sink shutdown.
mf/session: Ensure the session object is shut down on release.
mf/session: Shut down all topologies on session shutdown.
mfmediaengine/tests: Set the volume after the null check in test_TransferVideoFrame().
mfmediaengine/tests: Test a media engine extension.
mfmediaengine: Set the source pending flag before creating the source.
mfmediaengine: Support media engine extensions.
Cooper Morgan (3):
winewayland: Fix use-after-release of window rects in configure handler.
winewayland: Handle WS_MINIMIZE to suppress incorrect state transitions.
winewayland: Restore minimized windows when compositor sends configure.
David Carrasco Flores (1):
wusa: Recognize runtime.syswow64 expressions.
Dmitry Timoshkov (2):
gdiplus: Copy logic for trimming bounds width from GdipMeasureString() to GdipMeasureCharacterRanges().
gdiplus: Copy logic for calculating y-offset from GdipDrawString() to GdipMeasureCharacterRanges().
Ekaterine Papava (1):
po: Update Georgian translation.
Esme Povirk (1):
mscoree: Update Wine Mono to 11.1.0.
Francis De Brabandere (30):
wscript: Implement WScript.Timeout property and //T:nn CLI flag.
wscript: Terminate the script when WScript.Timeout elapses.
vbscript: Return specific error codes for unterminated block statements.
vbscript: Return error 1045 for non-literal constant expressions.
vbscript: Convert VT_DISPATCH arguments to string in Eval/Execute/ExecuteGlobal.
vbscript: Track source location in const, class, and function declarations.
vbscript: Return "Name redefined" error for duplicate global declarations.
vbscript: Return "Name redefined" error for duplicate class members.
scrrun: Implement IFolder and IFile ShortName and ShortPath.
vbscript: Return error 1010 for keyword used where identifier expected in Dim.
vbscript: Return "Invalid for loop control variable" error for member expressions.
vbscript: Implement DatePart built-in function.
vbscript: Fix Sub first argument parentheses handling.
vbscript: Convert string to number for comparison operators.
vbscript: Return proper errors for orphan Loop and Next keywords.
vbscript: Move call_depth check past exec_script's setup phase.
vbscript: Resolve parser conflicts with %prec and %expect.
vbscript: Implement GetLocale and SetLocale functions.
vbscript: Use script LCID in Format* functions.
vbscript: Pass script LCID to VariantChangeType in to_string helper.
vbscript: Pass script LCID to VariantChangeType in to_system_time helper.
vbscript: Implement LenB.
vbscript: Implement LeftB, RightB, and MidB.
vbscript: Implement InStrB.
vbscript: Implement AscB and ChrB.
vbscript: Support element access on public array properties of class instances.
scrrun: Implement IFile::Delete.
scrrun: Implement IFolder::Delete.
scrrun: Implement IFile::Move.
scrrun: Implement IFolder::Move.
Hans Leidekker (1):
secur32: Handle SEC_WINNT_AUTH_IDENTITY_EX in the Negotiate provider.
Hendrik Borchardt (1):
msvcrt: Only reject negative timestamps with EINVAL in ctime_s.
Henri Verbeet (1):
winmm: Handle DRVM_MAPPER_CONSOLEVOICECOM_GET messages.
Ivan Ivlev (3):
odbc32: Compare strings case-insensitively in get_driver_filename().
odbc32: Skip operations for NULL filename in replicate_odbc_to_registry().
odbc32: Check if row_number is NULL in param_options_unix().
Jacek Caban (9):
mshtml/tests: Remove unused variables.
mshtml/tests: Add missing CHECK_CALLED statements.
mshtml/tests: Remove unused variables and fix CLEAR_CALLED statements.
winspool.drv/tests: Remove unused variables.
localspl/tests: Remove unused variable.
urlmon/tests: Remove unused variables.
urlmon/tests: Add missing CHECK_CALLED statements.
itss/tests: Fix CHECK_CALLED statement.
ntdll: Use ESR in the ARM64 signal handler when possible.
Joe Meyer (1):
win32u: Stub NtUserInitializeTouchInjection.
Lubomir Rintel (1):
cmd: Fix handling of "ECHO.ON".
Matteo Bruni (4):
winex11: Factor out mapping keycodes to scancodes / keysyms into a separate function.
winex11: Get Xkb group names.
winex11: Look up keysyms for the currently selected Xkb group in X11DRV_KEYBOARD_DetectLayout().
winex11: Decode current keyboard layout from the Xkb group name.
Michał Durak (3):
nsiproxy.sys: Avoid null pointer dereference on if_nameindex() failure.
nsiproxy.sys: Avoid malloc(0) in case no network interfaces are present.
iphlpapi: Avoid out-of-bounds read if no network interfaces are present.
Nikolay Sivov (37):
msxml3: Fix owner node refcount update when adding children and attributes.
msxml3: Respect document encoding in Save().
msxml3: Fix a leak when parsing xml declaration body (Coverity).
msxml3: Improve cleanup on error paths when creating DOM nodes (Coverity).
msxml3/tests: Fix copy-paste issue when testing node value (Coverity).
msxml3/tests: Fix a string double free (Coverity).
msxml3/tests: Fix some use-after-free (Coverity).
msxml3/tests: Add a few missing return value checks (Coverity).
odbc32: Add missing object unlock on return in SQLSetEnvAttr().
msxml3/tests: Add some tests for loading documents with Shift_JIS encoding.
msxml3: Handle Shift_JIS encoding in the parser.
msxml3: Improve handling of incomplete multibyte sequences in parser input.
msxml3/tests: Separate DTD validation tests.
msxml3/tests: Add more tests for DTD node methods.
msxml3: Implement previousSibling() property for DTD node.
msxml3: Implement nextSibling() property for DTD node.
msxml3: Do not rely on strings being BSTRs in createNode().
msxml3/tests: Add more tests for baseName property.
msxml3: Remove fixme's from implemented methods.
msxml3/tests: Add more tests for creating entity references.
msxml3: Improve name validation for entity reference nodes.
msxml3/tests: Add some tests for creating document fragments.
msxml3: Ignore name and uri when creating document fragments.
msxml3/tests: Add some tests for max-element-depth property.
msxml3/tests: Extend MaxElementDepth tests.
msxml3/sax: Add support for max-element-depth property.
msxml3: Add support for MaxElementDepth property in the DOM parser.
msxml3: Improve attribute value normalization in DOM.
msxml3: Store attribute types in parsed form.
msxml3: Store parsed attribute default declaration type.
msxml6/tests: Add some tests for XMLHTTP API.
msxml3: Create structured representation for element declarations.
msxml3/sax: Store reusable type strings separately.
msxml3/sax: Keep reused strings together.
msxml3/sax: Keep DTD data in a separate structure.
msxml3/sax: Retain element declarations as DTD data.
msxml3: Pass parsed DTD data to the DOM.
Paul Gofman (3):
ntdll: Do not crash in RtlVirtualUnwind2() in some cases of NULL output parameters on x64.
ntdll: Catch access violation in RtlVirtualUnwind2() on arm64.
ntdll: Only take PEB lock to update PEB data in RtlSetCurrentDirectory_U().
Piotr Caban (19):
odbc32: Support data type conversion on version mismatch.
msado15: Wrap IAccessor interface in rowset wrapper.
msado15: Use CoTaskMemFree in dbtype_free.
msado15: Introduce helper to get bookmark in IRowset wrapper.
msado15: Add partial implementation of IRowsetFind::FindNextRow in rowset wrapper.
msado15: Handle BSTR data in IRowsetFind::FindNextRow.
msado15: Don't leak HACCESSOR on error in _Recordset::Find.
msado15: Handle empty BSTR bookmark in _Recordset::Find.
msado15: Don't crash if IRowsetUpdate::Update doesn't allocate status in _Recordset::Update.
msado15: Take cache size into account when calculating offset from current row in recordset_Find.
msado15: Initialize recordset->current_row in recordset_Find.
msado15: Validate arguments in _Recordset::put_CursorLocation.
msado15: Print FIXME message when client-side cursor is requested.
msado15: Rename create_mem_rowset to create_client_cursor.
msado15: Print FIXME message when changing active connection when recordset is open.
msvcp120: Ensure that segments are not being allocated when segments table is enlarged.
msvcp120: Don't count segments being allocated when reporting vector capacity.
Revert "msvcp120: Ensure that segments are not being allocated when segments table is enlarged.".
concrt140: Sync details.c file with msvcp90.
Rémi Bernon (24):
winex11: Fix some X11DRV_InitKeyboard loop indentation.
opengl32: Fix incorrect cleanup when GLsync creation fails.
opengl32: Avoid leaking client syncs on context destruction.
opengl32: Move wgl_cs entry / exit out of handle functions.
dinput: Check for disabled/overridden devices in hid_joystick_try_open.
dinput: Handle device override directly in hid_joystick_device_try_open.
dinput: Save and load HID joystick instance GUIDs to the registry.
opengl32/tests: Remove unnecessary window creation check.
opengl32/tests: Declare and load every GL/WGL functions.
opengl32/tests: Test implicit object allocation support.
opengl32/tests: Test wglShareLists sharing of various types.
opengl32/tests: Test wglShareLists sharing of GLsync objects.
opengl32/tests: Test object types shared namespaces.
dinput: Test and implement support for GUID_Sys(Mouse|Keyboard)Em.
opengl32: Generate a thunks.h file for extern declarations.
opengl32: Implement wglMakeCurrent with wglMakeContextCurrentARB.
opengl32: Implement wglCreateContext with wglCreateContextAttribsARB.
opengl32: Move context thread id checks to the PE side.
opengl32: Generate code to call the get_integer hooks.
opengl32/tests: Test the default framebuffer behavior.
win32u: Only fill the drawable buffer map for valid buffers.
opengl32: Validate glDrawBuffers enum before setting the state.
opengl32: Initialize the context draw / read buffers on creation.
opengl32: Always use the partial context state tracker.
Sameer Singh (समीर सिंह) (1):
gdi32/uniscribe: Correct the script tag for Tamil.
Stefan Dösinger (1):
hhctrl.ocx: Make Contents/Search/Index children of the tab control.
Sven Baars (1):
ntdll: Make sure User Syscall Dispatch defines are always defined on Linux.
Tim Clem (1):
cfgmgr32: Catch invalid handles in CM_Unregister_Notification.
Twaik Yont (6):
wineandroid: Switch java_* variables to direct linking.
wineandroid: Load AHardwareBuffer symbols from libandroid.
wineandroid: Simplify client pid handling.
wineandroid: Use Android logging for ioctl paths.
wineandroid: Move native window registration to surface_changed.
wineandroid: Pass JNIEnv explicitly through ioctl handlers.
Yuxuan Shui (2):
urlmon/tests: Test output length calculation when output buffer is too small.
iertutil: Fix out-of-bound access in remove_dot_segments.
Zhiyi Zhang (6):
Revert "win32u: Don't forcefully activate windows before restoring them.".
iertutil: Fix wrong host type for Punycode-encoded hostnames.
gdi32: Test that GetDIBits() rejects DDBs that are not 1-bit or 32-bit.
win32u: Reject DDBs that are not 1-bit or 32-bit for GetDIBits().
win32u: Optimize the speed of halftone primitives by using 32.32 fixed point arithmetic.
win32u: Set the normal window position without going through NtUserSetInternalWindowPos().
```
1
0