Release 2.9.

System Internals / WINE - Alexandre Julliard [] - 26 May 2017 03:38 EDT


diff --git a/ANNOUNCE b/ANNOUNCE
index 5daadb1..1b2b1b9 100644
@@ -1,16 +1,16 @@
-The Wine development release 2.8 is now available.
+The Wine development release 2.9 is now available.

What's new in this release (see below for details):
- - Direct3D command stream runs asynchronously.
- - Better serial and parallel ports autodetection.
- - Still more fixes for high DPI settings.
- - System tray notifications on macOS.
+ - Support for tesselation shaders in Direct3D.
+ - Binary mode support in WebServices.
+ - Clipboard changes detected through Xfixes.
+ - User interface improvements in RegEdit.
- Various bug fixes.

The source is available from the following locations:


Binary packages for various distributions will be available from:

@@ -26,333 +26,384 @@ AUTHORS in the distribution for the complete list.


-Bugs fixed in 2.8 (total 35):
- 11811 Multiple applications fail to enumerate serial ports ('HKLM\\HARDWARE\\DeviceMap\\Serialcomm' registry entries)(Coastal Explorer, GPS apps, HyperTerminal)
- 30105 Chessbase Ludwig 3: MS Visual C++ Runtime Error
- 32155 MS Office 2007 SP3 installation needs msi.dll.MsiGetPatchFileListW
- 34551 Necrovision demo sometimes crashes with builtin d3dx9
- 34977 WinDjView: missing checkbox in the set as default viewer dialog
- 36820 Multiple games (Rift, dynamarisa, ShipSimulator 2008 demo) crash on startup (ID3DXBaseEffect::GetPassDesc returns NULL ptr for vertex and pixel shader function)
- 37811 Xvid 1.3.x installer MPEG-4 Video Codec '' registration fails (crash on unimplemented function mfplat.dll.MFTRegister)
- 39309 Prism Video Converter v2.48 crashes on unimplemented function mfplat.dll.MFTEnum
- 39314 WAtomic: Black OpenGL (wgl) components
- 39936 Toad Data Modeler v5.4.8.1 fails to install (needs 'Scriptlet.TypeLib' object, CLSID '{06290BD5-48AA-11D2-8432-006008C3FBFC}')
- 40955 Steam version of Left 4 Dead 2 v2.1.4.6 crashes randomly in Multiplayer because of a certificate problem in the MOTD
- 41796 Fill Up! (freely downloadable game) crashes when creating a player profile
- 42035 WindBot needs msvcp120.?_2@placeholders@std@@3V?$_Ph@$01@2@A
- 42478 Undeclared O_CLOEXEC use in qcap DLL
- 42605 B4J (Basic 4 Java) crashes when click menu
- 42652 CryptCreateHash error NTE_FAIL after CryptImportKey(public-key)
- 42712 Image-Bugs in Guild Wars 2 (Guild emblem)
- 42835 redefinition of typedef 'WSD*'
- 42838 Steuer-Spar-Erklärung 2017 crashes on launch
- 42905 Compile error Undefined GNUTLS_MAC_AEAD
- 42919 Witcher Enhanced Edition Director's Cut crashes (purist)
- 42923 Neverwinter Online new module crashes with wine-2.7-staging
- 42925 strftime() truncates output inappropriately when %z is used
- 42926 Cut-and-paste from Wine App to Linux App adds trailing hidden chars ^@^@
- 42935 Dawn of War III crashes with unimplemented function concrt140.dll.??0scoped_lock_read@reader_writer_lock@Concurrency@@QEAA@AEAV12@@Z,
- 42946 FFXIV fails to render (D3D11)
- 42962 Multiple games use unimplemented d3d11_immediate_context_ClearState() (FFXIV, Gauntlet)
- 42965 0.9.x crashes on unimplemented function api-ms-win-core-memory-l1-1-2.d.CreateFileMappingW
- 42975 Graphical glitches on Age of Empires
- 42986 wine can't be compiled by gcc-2.95.4 (amstream/mediastream.c)
- 42990 wine can't be compiled by gcc-2.95.4 (d3dx9_36/effect.c)
- 42991 wine can't be compiled by gcc-2.95.4 (dmusic/port.c)
- 42992 wine can't be compiled by gcc-2.95.4 (dwrite/opentype.c)
- 42995 wine can't be compiled by gcc-2.95.4 (netprofm/list.c)
- 42996 wine can't be compiled by gcc-2.95.4 (programs/ipconfig/ipconfig.c)
+Bugs fixed in 2.9 (total 38):
+ 24698 Explorer++ doesn't show file icons
+ 32473 Acoustica Mixcraft 6 crashes when loading project containing video (DirectShow Editing Services missing 'AMTimeline' class, '{78530b75-61f9-11d2-8cad-00a024580902}', 'qedit.dll')
+ 33844 Grandia 2 whiteout.
+ 34850 Improve commctl32 TaskDialogIndirect stub to show "content" part in task dialog box (more detailed error messages for various apps/games)
+ 35529 Uninstaller: application list doesn't fit
+ 37405 The entry "My Computer" in regedit is handled like a registry key
+ 38980 World of Warships/Planes/Tanks client in torrent download mode crashes spuriously on high bandwidth load (i/o completion ports)
+ 39153 Tomb Raider last edition 2013 (Steam version) crashes while starting
+ 41091 1nsane ( crashes after launch
+ 41184 DX11 Tesselation tutorial doesn't work correctly
+ 41837 Way of the Samurai 4 has black blocks in the main menu without native d3dx9
+ 41908 WeChat can't display and send emoticons.
+ 42080 Listview does not draw correctly in some conditions.
+ 42186 Uplay games don't work anymore since latest update
+ 42292 The Witcher 3 fails to render correctly after starting a new game
+ 42296 avast installer doesnt start (needs LdrEnumerateLoadedModules)
+ 42348 League of legends installer: "Invalid command line"
+ 42410 Banished (DX11) renders broken geometry (regression)
+ 42673 no longer runs after Wow Legion update
+ 42708 Soul Reaver GOG Cinematics stopped working
+ 42783 Terragen 4 needs function KERNEL32.dll.GetActiveProcessorGroupCount
+ 42846 GT Challenge (Boxrun) crashes
+ 42873 Need for Speed: The Run crashes when reacquiring query context
+ 42900 The Testament of Sherlock Holmes rendering issue
+ 42922 GMATPrep 2.4.323 fails to install
+ 42937 Multiply games stuck with stack overflow when using OffscreenRenderingMode=backbuffer
+ 42940 WAtomic: White labels that show name of elements hidden by GL components
+ 42966 World/models are upside-down in multiply games when using ORM=backbuffer
+ 42985 Rise of the Tomb Raider needs unimplemented function USER32.dll.GetPhysicalCursorPos
+ 42993 wine can't be compiled by gcc-2.95.4 (gdiplus/metafile.c)
+ 43005 secur32/tests/ntlm.ok crashes in DeleteSecurityContext
+ 43012 FFXIV (Realm Reborn) requires patch list primitive type support
+ 43019 redefinition of typedef 'QWORD' (wine compilation fails with gcc 4.2.1)
+ 43023 Applications using Windows Script Host Shell Object crash due to added IProvideClassInfo support
+ 43026 SP+ maker won't run.
+ 43039 Rise of the Tomb Raider needs unimplemented function USER32.dll.PhysicalToLogicalPoint
+ 43048 regedit crashes exporting any HKEY_* entry
+ 43062 Installer from displays black rectangles


-Changes since 2.7:
-Akihiro Sagawa (2):
- rsaenh/tests: Add CryptImportKey tests with a public key.
- rsaenh: Don't import a public key to a key container.
-Alex Henrie (3):
- mountmgr: Create devices and registry entries for serial ports.
- mountmgr: Create devices and registry entries for parallel ports.
- ntdll: Implement ProcessVmCounters for Linux for other processes.
-Alexandre Julliard (14):
- preloader: Add a fallback to the old mmap syscall just in case.
- mountmgr: Create the DEVICEMAP registry keys in their respective driver.
- mountmgr: Create symbolic links in DosDevices for serial and parallel ports.
- kernel32: Rely solely on the DosDevices symbolic links in QueryDosDevice.
- configure: Check for the necessary data structure for if_nameindex().
- server: Implement IOCTL_SERIAL_GET_TIMEOUTS as an ioctl on the server side.
- server: Implement IOCTL_SERIAL_SET_TIMEOUTS as an ioctl on the server side.
- server: Implement IOCTL_SERIAL_SET_WAIT_MASK as an ioctl on the server side.
- server: Implement IOCTL_SERIAL_GET_WAIT_MASK as an ioctl on the server side.
- server: Store the SERIAL_TIMEOUTS structure directly in the object.
- qcap: Fix build when O_CLOEXEC isn't defined.
- winex11: Simplify the clipboard HTML export function.
- winex11: Remove all trailing nulls when exporting text strings.
- user32/tests: Test resulting size of strings with trailing nulls.
-Alistair Leslie-Hughes (3):
- include: Add drmexternals.idl and wmdrmsdk.idl.
- include/wmsdkidl.idl: Add more interfaces.
- wmvcore/tests: Add more interface tests.
-Andrew Wesie (1):
- setupapi: Fix SetupDiGetDeviceRegistryProperty if property does not exist.
-Andrey Gusev (2):
- ext-ms-win-authz-context-l1-1-0: Add dll.
- msi: Add MsiGetPatchFileListA/W stubs.
-Björn Bidar (1):
- wined3d: Add NVIDIA GTX 1080 Ti to the GPU list.
-Bruno Jesus (2):
- gdiplus: Use software mode to draw semi-transparent lines when necessary.
- ws2_32: Use unsigned interface index on interface_bind_check.
-Daniel Lehman (4):
- msvcp140: Remove forwards for some _Thrd functions.
- include: Remove references to SPARC.
- dbghelp: Add support for char16_t type.
- dbghelp: Add support for char32_t type.
-Dmitry Kislyuk (1):
- vbscript: Allow colons at the end of first line of loops.
-Dmitry Timoshkov (2):
- include: Fix the GUID_WICPixelFormat32bppCMYK definition.
- include: Fix typos in WICPersistOptions enumeration names.
-Hans Leidekker (6):
- webservices: Allow listeners to be cancelled.
- webservices: Don't trace output parameters in WsReadQualifiedName.
- webservices: Implement WsReadAttribute.
- iphlpapi: Return a fully initialized GUID from ConvertInterfaceLuidToGuid.
- netprofm: Fix compilation on systems that don't support nameless unions.
- iphlpapi: Adapter names returned from GetAdaptersAddresses are GUID strings.
-Henri Verbeet (30):
- ddraw/tests: Port test_texturemapblend() to ddraw4.c as well.
- ddraw: Validate that non-fill blits have a source surface in ddraw_surface7_Blt().
- wined3d: Print a FIXME if the view format doesn't match the resource format in surface_cpu_blt_colour_fill().
- wined3d: Use the CPU blitter for clearing depth/stencil textures that are current in the map binding.
- wined3d: Allow the command stream thread to run asynchronously.
- d3dx9/tests: Use compare_float() in D3DXFresnelTest().
- d3dx9/tests: Use compare_float() in D3DXMatrixTest().
- d3dx9/tests: Use compare_float() in D3DXQuaternionTest().
- d3dx9/tests: Use compare_float() in D3DXVector2Test().
- d3dx9/tests: Use compare_float() in D3DXVector3Test().
- d3dx9/tests: Use compare_float() in D3DXVector4Test().
- d3dx9/tests: Use compare_float() in test_D3DXFloat_Array().
- d3dx9/tests: Use compare_float() in test_D3DXSHAdd().
- d3dx9/tests: Use compare_float() in test_D3DXSHDot().
- d3dx9/tests: Use compare_float() in test_D3DXSHEvalConeLight().
- d3dx9/tests: Use compare_float() in test_D3DXSHEvalDirection().
- d3dx9/tests: Use compare_float() in test_D3DXSHEvalDirectionalLight().
- d3dx9/tests: Use compare_float() in test_D3DXSHEvalHemisphereLight().
- d3dx9/tests: Use compare_float() in test_D3DXSHMultiply2().
- d3dx9/tests: Use compare_float() in test_D3DXSHMultiply3().
- d3dx9/tests: Use compare_float() in test_D3DXSHMultiply4().
- d3dx9/tests: Use compare_float() in test_D3DXSHRotate().
- d3dx9/tests: Use compare_float() in test_D3DXSHRotateZ().
- d3dx9/tests: Use compare_float() in test_D3DXSHEvalSphericalLight().
- d3dx9/tests: Use compare_float() in test_D3DXSHScale().
- d3dx9/tests: Use a more reasonable ARRAY_SIZE macro.
- d3dx9/tests: Use ARRAY_SIZE in test_D3DXFloat_Array().
- d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHDot().
- d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHEvalConeLight().
- d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHEvalDirection().
-Hugh McMaster (7):
- regedit: Add a missing 'break' statement (Coverity).
- regedit: Pass RegQueryValueEx() the actual buffer size (Coverity).
- regedit: Simplify clean-up in get_lineA/W().
- regedit: Return a Unicode line from get_lineA().
- regedit: Use a function pointer to read each registry line instead of calling get_lineA/W() directly.
- regedit: Merge header checks from processRegLinesA/W() to their caller.
- regedit: Merge processRegLinesA/W() into their caller.
-Huw D. M. Davies (12):
- explorer: Set the rebar band height to match the combobox.
- wordpad: Scale the comboboxes with font size and correctly set the rebar band height.
- shell32: Fix the icon sizes of the shell imagelists.
- shell32: Simplify imagelist handling.
- shell32: Load icons with the correct size.
- user32: Fix the calculation of system metrics icon sizes.
- user32: Fix icon spacing minimium values.
- user32: Change IsProcessDPIAware() to always return TRUE.
- comdlg32: Scale the control size limits with dpi.
- comdlg32: Use pixel sizes throughout.
- comdlg32: Set the radiobuttons' font if they're part of a visual group.
- comdlg32: Select the correct font before querying the extents.
-Jacek Caban (15):
- jscript: Simplify pop_to_stat implementation.
- jscript: Added new opcode to enter catch block and use it to setup the scope.
- jscript: Ensure that OP_pop_except is called with proper stack depth.
- jscript: Pass finally offset instead of catch ident to OP_push_except.
- jscript: Always jump to finally block from OP_pop_exept when available.
- jscript/tests: Added more exception tests.
- ntdll/tests: Added more completion port tests.
- ieframe: Return DISP_E_UNKNOWNNAME in IShellUIHelper2::GetIDsOfNames.
- jscript: Added new debug channel printing details and backtrace of unwinded exceptions.
- mshtml: Don't expose doScroll in IE11 document mode.
- mshtml: Added separated IE5 and quicks mode compatibility mode.
- mshtml: Use IE version dependent on compatibility mode for conditional comments.
- server: Allocate wait handle on async object in queue_irp.
- ntdll/tests: Added FSCTL_PIPE_PEEK tests.
- kernel32/tests: Use shorter timeout for wait that we expect to time out.
-Józef Kucia (36):
- wined3d: Introduce wined3d_device_get_hs_resource_view().
- d3d11: Implement d3d11_immediate_context_HSGetShaderResources().
- wined3d: Introduce wined3d_device_get_ds_resource_view().
- d3d11: Implement d3d11_immediate_context_DSGetShaderResources().
- wined3d: Introduce wined3d_device_get_hs_sampler().
- d3d11: Implement d3d11_immediate_context_HSGetSamplers().
- d3d10: Validate SDK version.
- wined3d: Introduce wined3d_device_get_ds_sampler().
- d3d11: Implement d3d11_immediate_context_DSGetSamplers().
- wined3d: Rework geometry shader inputs/outputs handling.
- wined3d: Pass correct input count to shader_glsl_setup_sm3_rasterizer_input().
- wined3d: Use interface blocks for shader inputs and outputs in GLSL 1.50.
- wined3d: Merge shader_glsl_generate_sm4_rasterizer_input_setup() into shader_glsl_generate_output_setup().
- d3d11: Implement d3d11_immediate_context_OMGetRenderTargetsAndUnorderedAccessViews().
- d3d11: Handle unsupported vertex buffer slots in better way.
- d3d11: Implement d3d11_immediate_context_ClearState().
- wined3d: Set geometry shader irrespective of vertex shader.
- wined3d: Ignore unhandled shader data types.
- d3d11: Implement d3d11_class_linkage_GetDevice().
- amstream: Fix compilation on systems that don't support nameless unions.
- ipconfig: Fix compilation on systems that don't support nameless unions.
- dmusic: Fix compilation on systems that don't support nameless structs or unions.
- wined3d: Disable only ARB_clip_control when ARB_viewport_array cannot be used for pixel center offsets.
- wined3d: Implement floating-point viewports.
- d3d11/tests: Add test for fractional viewports.
- wined3d: Make "value" optional in wined3d_device_get_predication().
- wined3d: Add "parent_ops" for query objects.
- d3d11/tests: Add test for predication state refcounting.
- d3dx9: Fix compilation on systems that don't support nameless unions.
- mscoree: Fix compilation on systems that don't support nameless unions.
- wined3d: Add support for patch constant signatures.
- wined3d: Add ARB_clear_texture extension.
- wined3d: Add ARB_clear_buffer_object extension.
- wined3d: Implement clearing buffer unordered access views.
- d3d11: Implement d3d11_immediate_context_ClearUnorderedAccessViewUint().
- d3d11/tests: Add test for clearing buffer unordered access views.
-Ken Thomases (2):
- winemac: Move CVDisplayLink operations out of @synchronized blocks to avoid potential deadlock.
- winemac: Track whether a view has ever had an OpenGL context attached.
-Matteo Bruni (3):
- wined3d: Release context on CPU blit failure.
- wined3d: Fix specular lighting calculation.
- wined3d: Ignore lights out of maximum range for legacy FFP lighting too.
-Michael Müller (6):
- ntdll/tests: Add tests for LdrEnumerateLoadedModules.
- ntdll: Implement LdrEnumerateLoadedModules.
- mfplat: Implement MFTRegister.
- mfplat: Implement MFTUnregister.
- mfplat: Implement MFTEnum.
- mfplat/tests: Add tests.
-Michael Stefaniuc (25):
- dmusic: Use DMUS_EVENT_SIZE() to calculate the size of the message.
- dmusic: Implement IDirectMusicBuffer::PackUnstructured().
- dmusic: Avoid an intermediate copy in PackStructured().
- dmime/tests: Use simpler variable names in test_InitAudio().
- dmime/tests: Add more InitAudio() tests.
- dmime: Properly use SetCooperativeLevel() on the dsound ifaces we create.
- dmusic/tests: Add some IDirectMusic_SetDirectSound() tests.
- dmusic/tests: Expand the dsound refcount testing with the port.
- dmusic: Use more sensible and consistent field names for IDirectMusic8Impl.
- dmusic: Implement IDirectMusic8::SetDirectSound().
- dmusic: Pass only the needed stuff to the DMPort create functions.
- dmusic: Partially implement the synth IDirectMusicPort::SetDirectSound().
- dmusic: Add dsound handling to the synth port Activate() method.
- dmime/tests: Add refcount test for generated dmusic/dsound.
- dmime: Simplify the check if the performance was initialized.
- dmime: Avoid a temporary variable in IDirectMusicPerformance8Impl_InitAudio().
- dmime: Finish the reindentation in CloseDown().
- dmime: Do not use Init() from InitAudio().
- dmime: Finish the cleanup of InitAudio().
- dmime: Forward Init() to InitAudio().
- dmusic: Set the dsound pointer to NULL on an error path.
- dmusic: Remove the port from the ports list on the port destruction.
- dmime: Add proper error handling to InitAudio().
- dmime: Initialize dmusic in InitAudio().
- dmusic: Fail in CreatePort() if SetDirectSound() wasn't called.
-Nikolay Sivov (26):
- msxml3/tests: Consistently use non-null pointer value.
- msxml3/tests: Initialize string pointer on default case too (Coverity).
- comctl32/tests: Fully initialize message test data (Coverity).
- dwrite/tests: Fully initialize call sequence test data (Coverity).
- shell32: Move SHCreateShellFolderView/SHCreateShellFolderViewEx and tests to corresponding files.
- shell32/tests: Don't trace all messages sent to listview.
- shell32/shellview: Set provided callback in SHCreateShellFolderView().
- shell32/shellview: Handle NULL folder pointer in SHCreateShellFolderViewEx().
- shell32/shellview: Respond to special interface id CDefView.
- comctl32/taskdialog: Remove superfluous title pointer check (Coverity).
- inetcomm: Fixed buffer leak on error path (Coverity).
- dpnet/tests: Fix free buffer access (Coverity).
- dpnet/tests: Added missing break (Coverity).
- mshtml/tests: Fix BSTR double-free (Coverity).
- comctl32/listview: Remove internal autoarrange flag, it breaks positioning.
- ntdll: Move EventEnabled() to ntdll.
- ntdll: Move EventWrite() to ntdll.
- api-ms-win-core-memory-l1-1-2: Update spec file.
- user32/msgbox: Fix static control id.
- user32: Added a helper to get screen dc.
- dwrite: Update to IDWriteFactory5.
- webservices/tests: Enable WsInitializeMessage() tests (Coverity).
- comctl32/listview: Convert item text once when looking for insertion point.
- dwrite: Initial support for number substitution.
- dwrite: Fix compilation failure regarding nameless unions.
- comdlg32: Use existing symbol for Help button id.
-Owen Rudge (5):
- wsdapi: Implement WSD LinkedMemory functions.
- wsdapi: Implement WSDXMLAddChild, Sibling, BuildAnyForSingleElement, CleanupElement.
- wsdapi/tests: Add tests for WSDXMLBuildAnyForSingleElement.
- wsdapi/tests: Add tests for WSDXMLAddChild.
- wsdapi/tests: Add tests for WSDXMLAddSibling.
-Paul Gofman (11):
- d3dx9/tests: Add test for D3DXFX_LARGEADDRESSAWARE effect creation flag.
- d3dx9: Store effect creation flags in struct d3dx_base_effect.
- d3dx9: Don't call get_parameter_by_name() from get_valid_parameter() if D3DXFX_LARGEADDRESSAWARE flag is set.
- d3dx9/tests: Factor out test_effect_preshader_compare_shader_bytecode() function.
- d3dx9/tests: Add test for GetPassDesc() function.
- d3dx9: Return shader functions in d3dx9_base_effect_get_pass_desc().
- d3dx9: Do not set active pass if BeginPass() failed.
- d3dx9/tests: Add tests for setting strings in effect.
- d3dx9: Support setting strings in effect.
- d3dx9: Sort preshader opcode table.
- d3dx9: Add 'log' preshader opcode.
-Piotr Caban (6):
- msvcrt: Fix '%z' format handling in strftime.
- msvcp90: Don't overwrite pointers to class members in basic_streambuf:swap.
- msvcr100: Add _invalid_parameter_noinfo_noreturn implementation.
- msvcp90: Call invalid_parameter_handler on index out of range in basic_string::operator[].
- msvcp110: Add placeholder::_Ph* exports.
- msvcr100: Add reader_writer_lock::scoped_lock implementation.
-Sebastian Lackner (3):
- psapi/tests: Remove todo_wine from succeeding tests.
- mfplat: Fix invalid memory access.
- wined3d: Shutdown CS thread before deallocating resources.
-Stefan Dösinger (1):
- winemac.drv: Implement systray version 1-4 notifications.
-Zebediah Figura (1):
- kernel32: Use the full path as an argument to winevdm.exe.
+Changes since 2.8:
+Akihiro Sagawa (15):
+ oleaut32: Fix parse error when converting non-ascii string to VT_DATE.
+ crypt32: Use isspaceW() instead of isspace() for WCHARs.
+ midimap: Avoid using isdigit() for WCHARs.
+ dbghelp: Avoid using isdigit() for WCHARs.
+ ntdll: Avoid using isdigit() for WCHARs.
+ secur32: Use isspaceW() instead of isspace() for WCHARs.
+ shell32: Avoid using isspace() for WCHARs.
+ shlwapi: Use isalnumW() instead of isalnum() for WCHARs.
+ msstyles: Avoid using isspace() for WCHARs.
+ wordpad: Avoid using isspace() for WCHARs.
+ wininet: Use isspaceW() instead of isspace() for WCHARs.
+ explorer: Avoid using isspace() for WCHARs.
+ xcopy: Avoid using isdigit() for WCHARs.
+ mscoree: Avoid using isdigit() for WCHARs.
+ msi: Avoid using isspace()/isdigit() for WCHARs.
+Alex Henrie (4):
+ mountmgr: Name DosDevices constants consistently.
+ ntdll/tests: Dump entire VM_COUNTERS structure.
+ ntdll: Always fill PagefileUsage counter with a nonzero value on Linux.
+ comctl32/listview: When adding a scrollbar, update the other one.
+Alexandre Julliard (9):
+ configure: Make warning messages consistent.
+ configure: Don't require X11 if we can build the Mac driver.
+ d3dx9: Check for missing log2 function.
+ wineconsole: Avoid some fatal errors.
+ wineconsole: Remove duplicate line feeds.
+ gdi32: Return more meaningful data in the null driver GetDeviceCaps implementation.
+ winex11: Fall back to the null driver for common device capabilities.
+ wsdapi/tests: Remove tests that use uninitialized variables.
+ server: Don't increment the clipboard sequence number for delayed rendering or synthesized formats.
+Alistair Leslie-Hughes (6):
+ include/wmsdkidl.idl: Stop redefinition of QWORD.
+ oleaut32: Remove dead code.
+ include/mfreadwrite.idl: Add interface IMFSinkWriter.
+ oleaut32: Use VariantChangeTypeEx to convert to VT_BOOL.
+ wined3d: Allow passing NULL to context_reacquire().
+ oleaut32/tests: Add more VarCat tests.
+André Hentschel (2):
+ cryptnet: Fix CryptGetObjectUrl spec file entry.
+ wsdapi: Fix WSDXMLBuildAnyForSingleElement spec file entry.
+Aurimas Fišeras (1):
+ po: Update Lithuanian translation.
+Austin English (32):
+ user32: Add GetPhysicalCursorPos/SetPhysicalCursorPos stubs.
+ advapi32: Sort specfile.
+ advpack: Sort specfile.
+ apphelp: Sort specfile.
+ cfgmgr32: Sort specfile.
+ crypt32: Sort specfile.
+ api-ms-win-core-shlwapi-obsolete-l1-1-0: Sort specfile.
+ api-ms-win-core-com-private-l1-1-0: Sort specfile.
+ api-ms-win-core-localization-private-l1-1-0: Sort specfile.
+ api-ms-win-core-misc-l1-1-0: Sort specfile.
+ api-ms-win-core-windowserrorreporting-l1-1-0: Sort specfile.
+ api-ms-win-devices-config-l1-1-1: Sort specfile.
+ api-ms-win-downlevel-advapi32-l1-1-0: Sort specfile.
+ api-ms-win-downlevel-ole32-l1-1-0: Sort specfile.
+ api-ms-win-downlevel-shlwapi-l1-1-0: Sort specfile.
+ api-ms-win-dx-d3dkmt-l1-1-0: Sort specfile.
+ api-ms-win-mm-misc-l1-1-1: Sort specfile.
+ user32: Add LogicalToPhysicalPoint/PhysicalToLogicalPoint stubs.
+ kernel32: Add GetActiveProcessorGroupCount stub.
+ kernel32: Add GetActiveProcessorCount stub.
+ kernel32: Add SetThreadIdealProcessorEx stub.
+ d3dx9_24: Sort specfile.
+ d3dx9_25: Sort specfile.
+ d3dx9_26: Sort specfile.
+ d3dx9_27: Sort specfile.
+ d3dx9_28: Sort specfile.
+ d3dx9_29: Sort specfile.
+ d3dx9_30: Sort specfile.
+ d3dx9_31: Sort specfile.
+ d3dx9_32: Sort specfile.
+ d3dx9_33: Sort specfile.
+ comsvcs: Label ordinal.
+Bas Weelinck (1):
+ cmd: Detect and handle start console title.
+Hans Leidekker (19):
+ webservices: Move the reader to the next node in WsCopyNode.
+ webservices: Properly handle readers positioned at BOF or EOF in WsCopyNode.
+ webservices: Treat empty prefixes as NULL.
+ webservices: Fix duplicating attributes.
+ webservices: Use a WS_BYTES structure to store XML buffer data.
+ webservices: Implement WS_XML_WRITER_PROPERTY_BUFFERS.
+ include: Add missing Web Services declarations.
+ webservices: Implement WsSkipNode.
+ webservices: Add initial support for binary XML in the writer.
+ webservices: Add support for writing namespace attributes in binary mode.
+ webservices: Set namespace attributes for prefixes introduced by attributes.
+ webservices: Add support for writing attributes and text in binary mode.
+ webservices: Add support for writing comments in binary mode.
+ webservices/tests: Add a test to show that the reader converts text to UTF-8.
+ webservices: Add initial support for binary XML in the reader.
+ webservices: Add support for reading attributes in binary mode.
+ webservices: Add support for reading text in binary mode.
+ webservices: Add support for reading comments in binary mode.
+ webservices/tests: Add more binary mode reading tests.
+Henri Verbeet (19):
+ wined3d: Allow (some) blits with fixups in the arbfp and ffp blitters with ORM_BACKBUFFER.
+ wined3d: Only translate coordinates for swapchain surfaces in surface_translate_drawable_coords().
+ wined3d: Clarify the status of ORM_BACKBUFFER.
+ wined3d: Introduce a separate CS queue for resource maps.
+ d2d1: Implement initial support for quadratic bezier outlines.
+ wined3d: Just fail if looking up the guessed GPU info fails in wined3d_adapter_init_gl_caps().
+ wined3d: Add a conversion function for WINED3DFMT_X8D24_UNORM.
+ wined3d: Only warn about unsupported input streams in fixed_get_input().
+ wined3d: Only warn about 0 blend factors in gl_blend_factor().
+ wined3d: Only warn about 0 blend ops in gl_blend_op().
+ d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHEvalHemisphereLight().
+ d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHEvalSphericalLight().
+ d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHMultiply2().
+ d3dx9/tests: Use ARRAY_SIZE in test_D3DXSHMultiply3().
+ wined3d: Fix "sysmem_count" accounting in wined3d_texture_invalidate_location().
+ wined3d: Validate constant buffer alignment.
+ d3d11/tests: Add a test for constant buffer alignment.
+ d3d10core/tests: Add a test for constant buffer alignment.
+ wined3d: Only warn about 0 stencil ops in gl_stencil_op().
+Hugh McMaster (24):
+ uninstaller: Pass RegQueryValueExW() the size of the buffer (Coverity).
+ regedit/tests: Add tests for key name and value name concatenation.
+ regedit/tests: Test if REG_SZ and REG_DWORD support line concatenation.
+ regedit/tests: Test whether blank lines affect multi-line concatenation.
+ regedit/tests: Add tests for importing REG_NONE data.
+ regedit/tests: Add tests for importing REG_EXPAND_SZ data.
+ regedit/tests: Add tests for importing REG_BINARY data.
+ comctl32/tests: Add tests for mouse right-click in a treeview control.
+ reg/tests: Add tests for key name and value name concatenation.
+ reg/tests: Test if REG_SZ and REG_DWORD support line concatenation.
+ reg/tests: Test whether blank lines affect multi-line concatenation.
+ reg/tests: Add tests for importing REG_NONE data.
+ reg/tests: Add tests for importing REG_EXPAND_SZ data.
+ reg/tests: Add tests for importing REG_BINARY data.
+ reg/tests: Remove two un-needed concatenation backslashes and fix some copy/paste errors.
+ regedit/tests: Re-order the REG_NONE import tests and fix some copy/paste errors.
+ regedit: Always assign focus to the default value when refreshing the listview.
+ regedit: Re-select the listview item after renaming is complete.
+ regedit: Update and sort the pop-up menus.
+ regedit: Only show the 'New' pop-up menu when right-clicking beneath the listview item list.
+ regedit: Remove duplicate HINSTANCE declaration from main.h.
+ regedit: Add 'Expand' and 'Collapse' options to the treeview pop-up menu.
+ regedit: Use a separate pop-up menu for the 'Computer' root node.
+ regedit/tests: Add tests for importing Windows 3.1 registry data.
+Huw D. M. Davies (11):
+ ole32: Add a helper to copy FORMATETC structures.
+ ole32: Use the helper function to copy the datacache's FORMATETC.
+ ole32: Use the helper function to copy the clipboard's FORMATETC.
+ ole32: Set the advise flags in CreateEntry().
+ ole32: Don't cache the BITMAPFILEHEADER.
+ ole32: Fix up the dib's resolution on loading.
+ ole32: OleUninitialize() does not release the reference to the clipboard's source dataobject.
+ ole32: Check the cache entry's stgmedium for the unloaded state.
+ ole32: Implement IOleCache_EnumCache().
+ ole32: Create CF_DIB and CF_BITMAP entries when either is cached.
+ ole32: Synthesize dibs or bitmaps as appropriate.
+Jacek Caban (22):
+ d3d11.idl: Added D3D11_QUERY_DATA_PIPELINE_STATISTICS declaration.
+ ws2_32: Don't try to match host name in getaddrinfo if AI_NUMERICHOST hint is specified.
+ rpcrt4: Always use winsock for networking.
+ rpcrt4: Use standard Wine list to store connections in RpcServerProtseq.
+ kernel32/tests: Added more PeekNamedPipe tests.
+ kernel32/tests: Run test_overlapped_transport in byte mode.
+ rpcrt4: Simplify rpcrt4_conn_np_write implementation.
+ rpcrt4: Simplify rpcrt4_conn_np_read implementation.
+ rpcrt4: Use named pipe in overlapped mode.
+ rpcrt4: Use non-blocking listening on named pipes.
+ rpcrt4: Cache event handle in RpcConnection_np object.
+ rpcrt4: Implement cancel_call for named pipes.
+ rpcrt4: Remove no longer needed helpers.
+ rpcrt4: Renamed connections list to listeners.
+ rpcrt4: Use HEAP_ZERO_MEMORY to alloc RpcConnection objects.
+ rpcrt4: Remove connection from list in RPCRT4_ReleaseConnection.
+ rpcrt4: Store all active connections in RpcServerProtseq.
+ rpcrt4: Introduce op for closing connection read end and use it when shutting down server.
+ rpcrt4: Add close_read implementation for named pipe connections.
+ rpcrt4: Add close_read implementation for TCP connections.
+ rpcrt4: Use HEAP_ZERO_MEMORY to alloc RpcServerProtseq objects.
+ ws2_32: Added GetAddrInfoExCancel stub implementation.
+Józef Kucia (46):
+ gdiplus: Fix compilation on systems that don't support nameless unions.
+ d3d11/tests: Remove dead assignments.
+ d3d10core/tests: Introduce check_interface() helper.
+ wined3d: Enable GL_ARB_compute_shader unconditionally in compute shaders.
+ wined3d: Print FIXME() for unknown SM4+ primitive types.
+ wined3d: Recognize SM5+ patch input primitive types.
+ wined3d: Add checkGLcall() to wined3d_unordered_access_view_clear_uint().
+ wined3d: Ignore dcl_index_range instruction in GLSL backend.
+ d3d11: Make "offsets" optional in d3d11_immediate_context_SOSetTargets().
+ wined3d: Handle tessellation shaders registers.
+ wined3d: Generate code for domain shaders.
+ d3d11/tests: Port test_clear_state() from d3d10core.
+ wined3d: Invalidate domain shader state regardless of ARB_clip_control support.
+ wined3d: Fill whole structure in find_ds_compile_args().
+ wined3d: Handle dcl_output_control_point_count instruction.
+ wined3d: Generate rasterizer setup in domain shaders only when necessary.
+ wined3d: Fix tracing of continuec instruction.
+ d3d10core/tests: Strip shaders bytecode.
+ d3d11/tests: Strip shaders bytecode.
+ wined3d: Change vPrim register data type to signed integer.
+ wined3d: Recognize hull shader phases.
+ wined3d: Add support for patch list primitive type.
+ wined3d: Update vertex shader when hull shader is changed.
+ wined3d: Generate code for hull shaders.
+ wined3d: Handle hull shader control point outputs.
+ wined3d: Mark some hull shader declarations as no-op in GLSL backend.
+ wined3d: Implement instancing for fork phases.
+ wined3d: Implement instancing for join phases.
+ wined3d: Fix wined3d_sysval_semantic values for tessellation factors.
+ wined3d: Implement patch constant registers.
+ wined3d: Implement temporary registers per phase.
+ wined3d: Add support for output registers relative addressing.
+ d3d11/tests: Add additional test for occlussion query.
+ d3d11/tests: Add basic test for quad tessellation.
+ include/d3d9: Update D3DQUERYTYPE enum.
+ d3d9/tests: Use ARRAY_SIZE() macro in device tests.
+ d3d9/tests: Add test for invalid query types.
+ wined3d: Generate variables for control point phase temporary registers.
+ wined3d: Do not use "temporary" bit field for SM4+ shaders.
+ wined3d: Avoid barrier() in tessellation control shader if possible.
+ wined3d: Implement hull shader vocp register.
+ d3d11/tests: Do not recreate SO buffer in test_quad_tessellation().
+ d3d9: Validate D3DQUERYTYPE.
+ wined3d: Implement SO statistics queries.
+ wined3d: Try harder to keep the current context.
+ d3d11: Add support for D3D11_QUERY_SO_STATISTICS_STREAM{0, 1, 2, 3} queries.
+Ken Thomases (3):
+ winemac: Move the logic for posting a KEYBOARD_CHANGED event if the keyboard type changes into the setter of the keyboardType property.
+ winemac: Ignore spurious or redundant notifications that the keyboard input source changed.
+ winemac: Fall back to the null driver for common device capabilities.
+Kim Malmo (1):
+ po: Update Norwegian translation.
+Lauri Kenttä (1):
+ po: Update Finnish translation.
+Nikolay Sivov (18):
+ wshom: Fix IWshShell3::Invoke() call to use correct implementation pointer.
+ comctl32/tests: Remove some dead code (Coverity).
+ rpcrt4/tests: Added missing assignment (Coverity).
+ dwrite/tests: Fix rendering mode variable type (Coverity).
+ dwrite: Fix locale data buffer length passed to GetLocaleInfoEx().
+ dplayx/tests: Added missing assignment (Coverity).
+ dpnet/tests: Added missing assignment (Coverity).
+ comctl32/tests: Remove useless rand() calls (cppcheck).
+ regedit: Fix a crash when exporting from top level key.
+ appwiz.cpl: Make list selection always visible, enable full row selection mode.
+ msvcp140/tests: Avoid filling value truncation in memset (Coverity).
+ uiautomationcore: Added UiaRaiseAutomationEvent stub.
+ comctl32/listview: Search through all items in LVFI_NEARESTXY mode.
+ comctl32/tests: A bit more tests for partial strings in LVM_FINDITEM.
+ comctl32/listview: Simplify a couple of conditions that are using LVFI_PARTIAL.
+ shell32/tests: Remove null check after dereference (Coverity).
+ comctl32/taskdialog: Display content text label.
+ po: Update Russian translation.
+Owen Rudge (4):
+ webservices: Write empty prefix if "prefix" is NULL and "ns" is empty.
+ wsdapi: Add initial implementation of IWSDXMLContext and WSDXMLCreateContext.
+ wsdapi/tests: Add tests for IWSDXMLContext_AddNamespace.
+ wsdapi/tests: Add tests for IWSDXMLContext_AddNameToNamespace.
+Paul Gofman (15):
+ d3dx9/tests: Add more tests for out of bounds array selector.
+ d3dx9: Use versioned parameter updates instead of 'dirty' flags.
+ d3dx9: Match native out of bounds array selector index handling.
+ d3dx9: Factor out regstore_set_modified_reg() function.
+ d3dx9: Avoid redundant constant tables updates.
+ d3dx9: Loop through input parameters in is_const_tab_input_dirty().
+ d3dx9: Add 'asin' preshader opcode.
+ d3dx9: Add 'acos' preshader opcode.
+ d3dx9: Add 'atan' preshader opcode.
+ d3dx9: Add 'atan2' preshader opcode.
+ d3dx9: Add 'div' preshader opcode.
+ d3dx9: Fix NAN handling in 'cmp' preshader opcode.
+ d3dx9: Use pass update version for detecting updated FXLC parameter.
+ d3dx9/tests: Check pixel shader sampler states in test_effect_commitchanges().
+ d3dx9/tests: Use static test blob in test_effect_preshader_ops().
+Piotr Caban (5):
+ user32: Don't load GetClipboardSequenceNumber dynamically in tests.
+ user32: Test clipboard sequence number for synthesized data.
+ user32: Test clipboard sequence number for delayed rendered data.
+ configure: Add configure checks for Xfixes library.
+ winex11: Implement clipboard changes tracking using xfixes extension.
+Sebastian Lackner (1):
+ appwiz.cpl: Use sha256 checksums to validate Mono/Gecko downloads.
+Stefan Dösinger (6):
+ ws2_32: Don't post completion packet if receiving fails with error immediately.
+ msvcp: Implement the wchar version of _Open_dir.
+ msvcp: Implement the wchar version of _Read_dir.
+ msvcp140: Implement _Close_dir.
+ iphlpapi: Implement if_nametoindex.
+ msvcp140: Implement _Make_dir.
+Sven Hesse (13):
+ wined3d: Implement SM4 continuec opcode.
+ d3d11/tests: Add test for the SM4 instruction continuec.
+ wined3d: Implement SM5 gather4_po_c opcode.
+ d3d11/tests: Add tests for SM5 instructions gather4_c/gather4_po_c.
+ d3d10core/tests: Port SM4 continuec instruction test from d3d11.
+ wined3d: Add EXT_texture_shared_exponent extension.
+ wined3d: Add support for WINED3DFMT_R9G9B9E5_SHAREDEXP.
+ d3d10core/tests: Add R9G9B9E5_SHAREDEXP to test_create_texture2d.
+ d3d10core/tests: Add R9G9B9E5_SHAREDEXP to test_create_texture3d.
+ d3d10core/tests: Add R9G9B9E5_SHAREDEXP to test_texture.
+ d3d11/tests: Add R9G9B9E5_SHAREDEXP to test_create_texture2d.
+ d3d11/tests: Add R9G9B9E5_SHAREDEXP to test_create_texture3d.
+ d3d11/tests: Add R9G9B9E5_SHAREDEXP to test_texture.
+Vincent Povirk (1):
+ gdiplus: Check SHADEBLENDCAPS only for printer devices.
+Zebediah Figura (3):
+ secur32/tests: Zero-initialize contexts.
+ kernel32: Implement bytes left in PeekNamedPipe().
+ kernel32/tests: Test bytes left in PeekNamedPipe().

Alexandre Julliard
diff --git a/AUTHORS b/AUTHORS
index 4c85d0a..a60e6a4 100644
@@ -1424,6 +1424,7 @@ Supphachoke Suntiwichaya
Susan Farley
Svante Signell
Sven Baars
+Sven Hesse
Sven Paschukat
Sven Verdoolaege
Sylvain Bouchard
diff --git a/VERSION b/VERSION
index 761143a..3d607fd 100644
@@ -1 +1 @@
-Wine version 2.8
+Wine version 2.9
diff --git a/configure b/configure
index da270dd..d2d391c 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for Wine 2.8.
+# Generated by GNU Autoconf 2.69 for Wine 2.9.
# Report bugs to .
@@ -580,8 +580,8 @@ MAKEFLAGS=
# Identity of this package.

@@ -2239,7 +2239,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures Wine 2.8 to adapt to many kinds of systems.
+\`configure' configures Wine 2.9 to adapt to many kinds of systems.

Usage: $0 [OPTION]... [VAR=VALUE]...

@@ -2309,7 +2309,7 @@ fi

if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of Wine 2.8:";;
+ short | recursive ) echo "Configuration of Wine 2.9:";;
cat <<\_ACEOF

@@ -2518,7 +2518,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-Wine configure 2.8
+Wine configure 2.9
generated by GNU Autoconf 2.69

Copyright (C) 2012 Free Software Foundation, Inc.
@@ -3036,7 +3036,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

-It was created by Wine $as_me 2.8, which was
+It was created by Wine $as_me 2.9, which was
generated by GNU Autoconf 2.69. Invocation command line was

$ $0 $@
@@ -19355,7 +19355,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
-This file was extended by Wine $as_me 2.8, which was
+This file was extended by Wine $as_me 2.9, which was
generated by GNU Autoconf 2.69. Invocation command line was

@@ -19426,7 +19426,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-Wine config.status 2.8
+Wine config.status 2.9
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"

7d2ce5c Release 2.9.
ANNOUNCE | 713 +++++++++++++++++++++++++++++++++-----------------------------
VERSION | 2 +-
configure | 18 +-
4 files changed, 393 insertions(+), 341 deletions(-)


  • Share