Release 1.9.6.
[wine.git] / ANNOUNCE
blob973dfffe1adaa6aa0c2de5bf70b8ed55804c36a1
1 The Wine development release 1.9.6 is now available.
3 What's new in this release (see below for details):
4   - Better video card detection when using Mesa.
5   - Support for Shader Model 5 shaders.
6   - C++ exception handling improvements.
7   - Various bug fixes.
9 The source is available from the following locations:
11   http://dl.winehq.org/wine/source/1.9/wine-1.9.6.tar.bz2
12   http://mirrors.ibiblio.org/wine/source/1.9/wine-1.9.6.tar.bz2
14 Binary packages for various distributions will be available from:
16   http://www.winehq.org/download
18 You will find documentation on http://www.winehq.org/documentation
20 You can also get the current source directly from the git
21 repository. Check http://www.winehq.org/git for details.
23 Wine is available thanks to the work of many people. See the file
24 AUTHORS in the distribution for the complete list.
26 ----------------------------------------------------------------
28 Bugs fixed in 1.9.6 (total 32):
30   17540  Zondervan Pradis 6.0 hangs due to ole32.dll.CoGetCurrentLogicalThreadId stub
31   21475  TI Interactive application fails when attempting to display the TI math palette
32   22533  Half-Life: Logo video rendering is wrong (msrle32 does not handle frames with 0 biClrUsed)
33   25086  Multiple games and applications need kernel32.GetLogicalProcessorInformationEx implementation (CPU-Z 1.72, Splinter Cell: Blacklist, Adobe CC 2015, Kontakt 5)
34   28177  Adventure games from Kheops Studio hang after the logo screen (Safecracker, Destination: Treasure Island, Nostradamus: Lost Prophecy, Dracula 3, Return to Mysterious Island 2)
35   29458  Explorer sometimes crashes on drag-and-drop in folders accessed from "/"
36   32237  A slower speed of light: Summer 2012 version crashes after Intro
37   32314  Pikachu Volleyball (English version) crashes on restart
38   32827  Legrand XlPro 3 (MFC app) crashes on startup (failure to load registry-free COM servers via app hook, 'OleCreate' must ignore HRESULT of 'IOleObject::GetMiscStatus')
39   33787  IE8 crashes on new tab
40   34303  underlined 8 point Times New Roman text doesn't display as underlined
41   35471  Telepone (MTSP FIM) needs msvcr100.dll._CreateFrameInfo
42   37949  eLicenser Control Center needs msvcr80.dll.__CxxRegisterExceptionObject
43   39239  ole32:compobj fails if privileges not high enough
44   39278  Multiple DirectX 10 games crash on unimplemented function d3d10_1.dll.D3D10CreateDeviceAndSwapChain1 (Assassin's Creed)
45   39461  Garmin Homeport 2.2.9 crashes on unimplemented function msvcr90.dll.__CxxRegisterExceptionObject
46   39510  EZCastPro 1.4/1.5 crashes on unimplemented function USER32.dll.QueryDisplayConfig
47   39577  Fallout 4 needs WINED3DFMT_R11G11B10_FLOAT render target
48   39674  3Dmark03, 05, 06 not started "System Info Error"
49   39797  The suffering does not start, needs wmasf.dll
50   39878  Diablo II does not start on 64bit system with more than 2GB VRAM cards
51   39918  Mail.Ru GameCenter installer does not work
52   40115  ole32:compobj regression (privilege issue)
53   40147  Assertion 'm->state == STATE_PASSIVE' failed at pulse/mainloop.c:827 on starting Skype 7.18.0.112
54   40190  7z fails at enumerating network places
55   40201  EccoPro only works on Wine 1.6.2
56   40221  Adobe Illustrator CC 2015 needs user32.GetGestureConfig
57   40222  IMalloc(Spy)::Free nullptr
58   40246  Please document WINEBUILD in the winegcc manpage
59   40253  Build regression: Can't remove fonts: is a directory (--with-wine64, shared wow64)
60   40287  steamwebhelper crashes in Windows 7 mode
61   40312  Please look for builtin *.fon fonts in fontdir
63 ----------------------------------------------------------------
65 Changes since 1.9.5:
67 Alex Henrie (1):
68       user32: Don't put a default icon on modal dialogs.
70 Alexandre Julliard (5):
71       configure: Don't create makefiles in directories that are symlinks in a Wow64 build.
72       libwine: Don't include backwards compatibility functions on Android.
73       advapi32: Fix null termination in RegQueryInfoKeyA.
74       vssapi: Undefine __thiscall before redefining it.
75       gdi32: Take into account the fontdir directory specified at build time.
77 Alistair Leslie-Hughes (3):
78       d3d10_1: Implement D3D10CreateDeviceAndSwapChain1().
79       user32: Don't crash in DrawTextEx when tab length is zero.
80       include: Add authz.h.
82 Andrew Eikum (7):
83       winepulse.drv: Check that the server connection actually succeeded.
84       mmdevapi: Implement IAudioEndpointVolume::GetVolumeRange.
85       mmdevapi: Implement Set/GetMasterVolumeLevel.
86       mmdevapi: Implement Set/GetMute.
87       dinput: Fix condition effect joystick offset calculation.
88       windowscodecs: Stub IWICMetadataQueryReader.
89       windowscodecs: Stub IMetadataBlockReader for jpegformat.
91 André Hentschel (3):
92       wrc: Remove getopt prototype.
93       winemaker: Markup fixes in German translation.
94       advapi32: Add CreatePrivateObjectSecurityEx.
96 Austin English (8):
97       wmasf: Add stub dll.
98       api-ms-win-core-file-l1-2-1: Add dll.
99       api-ms-win-core-memory-l1-1-2: Add dll.
100       api-ms-win-core-version-l1-1-0: Add dll.
101       api-ms-win-core-string-l2-1-0: Add dll.
102       user32: Add GetGestureConfig stub.
103       user32: Add QueryDisplayConfig stub.
104       bthprops.cpl: Add BluetoothFindFirstRadio/BluetoothFindRadioClose stubs.
106 Bruno Jesus (1):
107       msrle32: Use the correct number of colors when biClrUsed = 0.
109 François Gouget (3):
110       include: Don't use the visibility attribute on Solaris.
111       shlwapi/tests: Fix a test failure on Windows 10.
112       d3dx9/tests: Add a trailing '\n' to an ok() call.
114 Frédéric Delanoy (1):
115       winemaker: Markup fixes in French translation.
117 Hans Leidekker (2):
118       webservices: Keep track of prefix bindings.
119       winhttp/tests: Fix test failures.
121 Henri Verbeet (50):
122       wined3d: Get resource info from the texture in context_setup_target().
123       wined3d: Get resource info from the texture in wined3d_device_set_cursor_properties().
124       wined3d: Get resource info from the rendertarget view in device_clear_render_targets().
125       wined3d: Get resource info from the rendertarget view in draw_primitive().
126       wined3d: Get resource info from the texture in wined3d_surface_blt().
127       wined3d: Replace device_update_volume() with a function to update multiple levels of a 3D texture.
128       wined3d: Pass a texture and sub-resource index to wined3d_device_create_cursor_texture().
129       wined3d: Use the resource map/unmap functions in wined3d_device_set_cursor_properties().
130       wined3d: Pass a texture and sub-resource index to surface_convert_format().
131       wined3d: Pass textures and sub-resource indices to surface_cpu_blt().
132       wined3d: Use D3DCOLORTOGLFLOAT4 in drawStridedSlow().
133       wined3d: Get rid of the D3DCOLOR_[RGBA] macros.
134       wined3d: Replace D3DCOLORTOGLFLOAT4 with an inline function.
135       wined3d: Sanitise map flags in wined3d_surface_map().
136       wined3d: Introduce wined3d_volume_prepare_location().
137       wined3d: Keep track of the download count in the texture.
138       wined3d: Introduce helpers functions to calculate texture level dimensions.
139       wined3d: Don't call surface_load_ds_location() directly.
140       wined3d: Properly handle discarded surfaces in surface_load_location().
141       wined3d: Use ARB_map_buffer_range in wined3d_surface_map() when available.
142       wined3d: "render_targets" is never NULL in context_find_fbo_entry().
143       ddraw/tests: Skip initialising "quad" and "indices" in test_specular_lighting() if a 3D device can't be created.
144       d3dx9: "param" should never be NULL in free_parameter().
145       d3dx9/tests: Get rid of a redundant NULL check in test_effect_states().
146       d3dx9/tests: Get rid of some redundant NULL checks in D3DXCreateTextTest().
147       wined3d: Get resource info from the texture in wined3d_surface_cleanup().
148       wined3d: Get resource info from the texture in surface_create_dib_section().
149       wined3d: Get resource info from the texture in surface_private_setup().
150       wined3d: Get resource info from the texture in surface_depth_blt_fbo().
151       wined3d: Get resource info from the texture in surface_blt_fbo().
152       wined3d: Get resource info from the texture in surface_convert_depth_to_float().
153       wined3d: Allow swapchain sample counts to be overridden with a registry key.
154       ddraw: Do not destroy surfaces that are still attached.
155       ddraw: Avoid d3d_device_update_depth_stencil() in ddraw_surface_delete_attached_surface().
156       ddraw: Just return an error if we failed to find the predecessor in ddraw_surface_delete_attached_surface().
157       opengl32: Introduce WGL_WINE_query_renderer.
158       winex11: Implement WGL_WINE_query_renderer on top of GLX_MESA_query_renderer.
159       wined3d: Use WGL_WINE_query_renderer to query GPU information.
160       wined3d: Get resource info from the texture in wined3d_surface_depth_fill().
161       wined3d: Get resource info from the texture in surface_download_data().
162       wined3d: Get resource info from the texture in wined3d_surface_upload_data().
163       wined3d: Get resource info from the texture in surface_upload_from_surface().
164       wined3d: Get resource info from the texture in surface_set_compatible_renderbuffer().
165       wined3d: Get resource info from the texture in surface_load().
166       wined3d: Properly check if sRGB writes should be enabled in context_apply_clear_state().
167       wined3d: Require a valid rectangle pointer if rect_count is non-zero in device_clear_render_targets().
168       wined3d: Ignore the dirty region for swapchain presents more explicitly.
169       wined3d: Handle NULL rectangles in wined3d_swapchain_present().
170       wined3d: Explicitly check for WINED3DUSAGE_TEXTURE when validating surface dimensions in surface_private_setup().
171       wined3d: Get rid of the WINED3DUSAGE_OVERLAY check in gdi_surface_private_setup().
173 Hugh McMaster (3):
174       reg: Correctly handle cases with no data argument.
175       reg: Fail if /v is passed without an argument.
176       reg: Fail if multiple /v switches are passed in.
178 Huw D. M. Davies (5):
179       gdi32: Generate EMR_POLYPOLY{LINE|GON}16 records if the co-ords fit.
180       gdi32: Don't update the bounds if any poly{line|gon} has fewer than two points.
181       gdi32/tests: Add tests for EMF PolyPolyline record creation.
182       riched20: \pard resets the reading direction.
183       riched20: Set the base embedding level for RTL paragraphs.
185 Jacek Caban (6):
186       winex11.drv: Use grabbed window display in SetCapture.
187       kernel32: Don't set unconditionally SECTION_QUERY flag in OpenFileMapping.
188       msxml3: Store xmlnode reference in xmlnodemap object.
189       msxml6: Added support for CLSID_XMLSchemaCache60 in XMLSchemaCache60::QueryInterface.
190       mshtml: Fixed cloning comment nodes.
191       mshtml: Fixed copy&paste typo in GetAsciiHostPort implementation.
193 Jens Reyer (1):
194       winegcc: Document WINEBUILD in the manpage.
196 Józef Kucia (43):
197       d3d10_1/tests: Port test_create_device() from d3d11.
198       d3d10core/tests: Add test for creating RTV with DXGI_FORMAT_UNKNOWN.
199       d3d11/tests: Add test for creating RTV with DXGI_FORMAT_UNKNOWN.
200       d3d10core/tests: Add test for creating DSV with DXGI_FORMAT_UNKNOWN.
201       d3d11/tests: Add test for creating DSV with DXGI_FORMAT_UNKNOWN.
202       d3d11/tests: Introduce d3d11_test_context for visual tests.
203       d3d11/tests: Introduce draw_quad().
204       wined3d: Recognize aoffimmi shader instruction modifier.
205       wined3d: Extend shader_glsl_gen_sample_code() to support offsets.
206       wined3d: Implement aoffimmi modifier for SM4 ld instruction in GLSL backend.
207       wined3d: Implement aoffimmi modifier for SM4 sample instructions in GLSL backend.
208       wined3d: Simplify shader_glsl_append_imm_ivec().
209       wined3d: Improve ERR() message in shader_glsl_get_sample_function().
210       d3d10core/tests: Introduce d3d10core_test_context for visual tests.
211       d3d10core/tests: Introduce draw_quad().
212       d3d11/tests: Drop redundant feature level check.
213       wined3d: Advertise WINED3DFMT_BC{4, 5}_UNORM 3D textures as not supported.
214       wined3d: Limit amount of video memory for older Windows versions.
215       d3d11/tests: Trace feature level.
216       d3d10core/tests: Move typeless textures test to test_create_texture{2d, 3d}().
217       d3d11/tests: Move typeless textures test to test_create_texture{2d, 3d}().
218       d3d11/tests: Add more create texture tests.
219       d3d11: Translate WINED3DERR_INVALIDCALL to E_INVALIDARG in d3d_texture{2d, 3d}_init().
220       d3d10core/tests: Add more create texture tests.
221       wined3d: Introduce debug_color().
222       wined3d: Implement depth clear in wined3d_device_clear_rendertarget_view().
223       wined3d: Implement stencil clear in wined3d_device_clear_rendertarget_view().
224       d3d11: Implement d3d11_immediate_context_ClearDepthStencilView().
225       d3d11: Implement d3d10_device_ClearDepthStencilView().
226       d3d10core/tests: Add test for ClearDepthStencilView().
227       d3d11/tests: Add test for ClearDepthStencilView().
228       d3d11: Fill unused fields in D3D11_DEPTH_STENCIL_DESC with default values.
229       d3d10core/tests: Test values of unused fields in D3D10_DEPTH_STENCIL_DESC.
230       d3d11/tests: Test values of unused fields in D3D11_DEPTH_STENCIL_DESC.
231       d3d11: Implement d3d11_immediate_context_OMSetDepthStencilState().
232       d3d11: Forward d3d10_device_OMSetDepthStencilState() to d3d11_immediate_context_OMSetDepthStencilState().
233       d3d11: Introduce debug_float4().
234       wined3d: Recognize SM5 ld_structured opcode.
235       wined3d: Recognize SM5 deriv_rtx_coarse opcode.
236       wined3d: Recognize SM5 deriv_rty_coarse opcode.
237       wined3d: Recognize SM5 deriv_rtx_fine opcode.
238       wined3d: Recognize SM5 deriv_rty_fine opcode.
239       wined3d: Use GLuint instead of GLenum to store ARB blitter shaders.
241 Louis Lenders (1):
242       ntdll: Add stub for RtlAddAccessDeniedObjectAce and forward to AddAccessDeniedObjectAce in advapi32.
244 Matteo Bruni (13):
245       d3dx9: Trace the parameter passed to IsParameterUsed().
246       d3d11/tests: Require feature level 11_0 or 10_0 by default.
247       dxgi: Add feature level support.
248       d3d11: Implement device_GetFeatureLevel().
249       d3d11: Only accept shader versions supported by the feature level of the device.
250       d3d11: Pass the requested feature levels to dxgi.
251       d3d11/tests: Add a test for the default feature level selection.
252       d3d11/tests: Test creating SM4 shaders on feature level 9.
253       d3dx9: Cleanup header includes.
254       d3d10core: Add feature level support.
255       wined3d: Enable SM5 shaders in the GLSL backend, when possible.
256       d3d11/tests: Add a feature_level parameter to init_test_context().
257       d3d11/tests: Test relative addressing in constant buffers.
259 Michael Stefaniuc (7):
260       dbghelp: Use CONTAINING_RECORD instead of reimplementing it.
261       riched20: Use SetRectEmpty() instead of open coding it.
262       winefile: Use SetRectEmpty() instead of open coding it.
263       wined3d: Use SetRect() instead of open coding it.
264       winex11: Use debugstr_a to print strings that can be NULL.
265       d3drm: Use debugstr_a to print a string that can be NULL.
266       dinput: Support IUnknown in the IDirectInputEffect COM object.
268 Miklós Máté (2):
269       wined3d: Warn only once about unsupported wrap state.
270       winex11: Don't create a temporary context each time X11DRV_wglBindTexImageARB is called.
272 Nikolay Sivov (29):
273       ole32/tests: Fix tests failing on limited account.
274       ole32/tests: Don't trace last error when error code is returned directly.
275       ole32/tests: Fixed CoGetPSClsid() test failures when running on limited account.
276       dwrite: Use correct return code on allocation failure.
277       dwrite: Update to IDWriteFont3.
278       include: Added IDWriteFactory3 method definitions.
279       notepad: Make sure to use large enough buffer when composing window title (Coverity).
280       oleview: Fix buffer length passed to Reg* functions (Coverity).
281       dwrite: Update to IDWriteFontFamily1.
282       dwrite: Implement IDWriteFontFamily1::GetFont().
283       dwrite: Update to IDWriteFontCollection1.
284       dwrite: Remove flag marking system collections.
285       dwrite: Update to IDWriteFontList1.
286       ole32/tests: A test to show data cache QI problems.
287       avifil32: Use matching buffer length for dest string (Coverity).
288       ole32: Implement CoGetCurrentLogicalThreadId().
289       ole32: Implement IComThreadingInfo::GetCurrentLogicalThreadId().
290       mpr: Implement WNetUseConnectionA().
291       ieframe: Handle CreateView() failure in ActivateMe() (Coverity).
292       xmllite: Support get/set for XmlResolver property.
293       msxml3: Accept VT_UNKNOWN input for IXMLDOMSchemaCollection::add().
294       comctl32/monthcal: MCM_GETRANGE does not return BOOL values.
295       ole32: Use CoGetApartmentType() to implement IComThreadingInfo.
296       comctl32/monthcal: Always reset range flags and date limits on MCM_SETRANGE.
297       comctl32/datetime: Use MCM_GETRANGE result directly in DTM_GETRANGE.
298       xmllite/writer: Implement WriteComment().
299       ole32: Fix refcounting of IObjContext per-thread instance.
300       ole32/tests: Some tests for IInitializeSpy.
301       xmllite/writer: Implement WriteCData().
303 Patrick Armstrong (3):
304       bcrypt: Implement MD5 algorithm and add tests.
305       bcrypt: Make BCryptHashData behave more like Windows with empty input.
306       bcrypt: Implement support for HMAC.
308 Paul Gofman (3):
309       d3dx9: IsParameterUsed stub should return TRUE.
310       d3dx9: Support setting texture through SetValue in effect.
311       d3dx9: Fix D3DXIntersectTri function.
313 Pierre Schweitzer (1):
314       mpr: Don't send lpRemoteName when requesting network place.
316 Piotr Caban (17):
317       user32: Return window procedure pointer in WINPROC_AllocProc if it's not possible to allocate handle.
318       user32/tests: Add initial out of window procedure slots test.
319       user32: Call window procedure even if we're out of winproc handles.
320       user32/tests: Show that message conversion should work on window procedures without handles.
321       user32/tests: Show that messages are not converted when function pointer is passed to CallWindowProc.
322       msvcrt: Add i386 _IsExceptionObjectToBeDestroyed implementation.
323       msvcrt: Destroy exception object if it's no longer used when exiting catch.
324       msvcrt: Handle try blocks inside current catch block in nested frame handler.
325       msvcrt: Destroy exception object when frame storing it is unwound.
326       msvcr80: Add _CreateFrameInfo implementation.
327       msvcr80: Add _FindAndUnlinkFrame implementation.
328       msvcrt: Add __CxxRegisterExceptionObject implementation.
329       msvcrt: Add __DestructExceptionObject implementation.
330       msvcrt: Add __CxxUnregisterExceptionObject partial implementation.
331       msvcr80: Use Cxx(Un)RegisterExceptionObject helpers in i386 nested exception handler.
332       msvcrt: Handle non c++ exceptions in __DestructExceptionObject.
333       msvcrt: Destroy thrown c++ object before calling handler in _except_handler4_common.
335 Sebastian Lackner (9):
336       services: Fix a typo.
337       services: Hold scmdatabase lock while checking marked_for_delete.
338       services: Initialize service ref_count directly in service_create.
339       services: Introduce refcounting for processes.
340       services: Pass a process argument to send_start_message function.
341       services: Pass a process argument to send_control function.
342       services: Pass a process argument to wait_for_startup function.
343       setupapi: Fix parsing of inf files containing garbage at the beginning of the file.
344       ieframe: Fix implementation of impl_from_ITargetFrame2.
346 Stefan Dösinger (10):
347       wined3d: Merge surface_prepare_map_memory() into wined3d_surface_prepare().
348       wined3d: Call wined3d_surface_prepare() in surface_load_sysmem().
349       wined3d: Call wined3d_volume_prepare_location() in wined3d_volume_load_location().
350       wined3d: Merge wined3d_surface_unmap() and wined3d_volume_unmap().
351       wined3d: Merge wined3d_surface_map() and wined3d_volume_map().
352       wined3d: Introduce wined3d_texture_use_pbo().
353       wined3d: Merge wined3d_surface_update_desc() into wined3d_texture_update_desc().
354       wined3d: Get rid of texture_ops.texture_sub_resource_add_dirty_region().
355       wined3d: Get rid of state access in shader_generate_glsl_declarations().
356       wined3d: Avoid storing a material pointer in struct wined3d_cs_set_material.
358 Vincent Povirk (3):
359       mscoree: Restore previous domain whenever we set it.
360       user32: Set capture earlier on popup menus.
361       user32: Skip menu loop for empty popup menus.
363 Zhenbo Li (1):
364       authz: Stub AuthzAccessCheck, AuthzFreeContext, AuthzInitializeContextFromSid, AuthzInitializeContextFromToken.
367 Alexandre Julliard
368 julliard@winehq.org