1 The Wine development release 1.9.3 is now available.
3 What's new in this release (see below for details):
4 - New version of the Gecko engine based on Firefox 44.
5 - JSON support in JavaScript.
6 - Improved line breaking in DirectWrite.
7 - Some more write support in WebServices.
8 - Still more Shader Model 4 instructions.
11 The source is available from the following locations:
13 http://dl.winehq.org/wine/source/1.9/wine-1.9.3.tar.bz2
14 http://mirrors.ibiblio.org/wine/source/1.9/wine-1.9.3.tar.bz2
16 Binary packages for various distributions will be available from:
18 http://www.winehq.org/download
20 You will find documentation on http://www.winehq.org/documentation
22 You can also get the current source directly from the git
23 repository. Check http://www.winehq.org/git for details.
25 Wine is available thanks to the work of many people. See the file
26 AUTHORS in the distribution for the complete list.
28 ----------------------------------------------------------------
30 Bugs fixed in 1.9.3 (total 24):
32 12652 Tom Clancy's Rainbow Six: Vegas 2 fails to launch (number of quality levels for D3DMULTISAMPLE_NONMASKABLE multiple-sample type must not exceed 8)
33 14617 Multiple Visual Basic 5/6 applications using ActiveX components depend on Standard OLE Types Typelib which is missing from 'olepro32.dll'
34 28488 Arcanum: Mouseclicks in character generation screen doubled with pause
35 32695 Yahoo Messenger login crashes on unimplemented function nspr4.dll.PR_SetCurrentThreadName (messenger provided 'nspr4.dll' ABI incompatible with Wine Gecko)
36 32852 BioEdit: changing the install directory doesn't show the change in the GUI
37 33140 Photos opened in Nikon Capture NX 2.4 have inverted red and blue channel for displaying.
38 33988 Star Wars: The Force Unleashed II - Crashes with a page fault
39 34504 __unDName doesn't support function pointer with type "P8"
40 34507 __unDName doesn't support data type "$$B"
41 37632 farcry 3 display strange colors
42 37911 LINE program, black window
43 39092 Regression introduced with xaudio2_8
44 39181 "When Monster Strikes", "The Vanishing of Ethan Carter Redux" require msvcr120.dll._set_FMA3_enable
45 39615 Multiple applications want msdrm.dll (Dassault Systemes CATIA v5, FoxitReader 5.1)
46 39686 IE frame freezes after calling the print dialog
47 39865 Poker Night: changing to non-fullscreen mode crashes X.
48 39875 Starcraft can't see Direct Cable Connection games hosted on another computer
49 39904 Spurious "You must use msvcrt" error even when __MSVCRT__ is defined (-mno-cygwin)
50 39928 Star Wars: The Old Republic corruptions in dialogues when Conversation Depth of Field is enabled
51 39933 iNode 3.6 client needs ndis.sys.NdisAllocateSpinLock
52 39965 Lego Mindstorms EV3 Software does not find EV3 brick using Bluetooth: needs irprops.cpl
53 40021 IDEA v1.7 fails to start
54 40035 VMware shared folders network provider fails loading in MPR
55 40052 Opening an RTF file with "A Wine application" fails with "File not found"
57 ----------------------------------------------------------------
62 kernel32: Set error if dstlen < 0 in codepage conversion functions.
63 user32: Avoid double initialization in IsDialogMessageW.
65 Alexandre Julliard (21):
66 ntdll/tests: Add some more tests for kernel object names.
67 ntdll/tests: Fix some more failures on restricted Windows.
68 wine.inf: Fix the wordpad.exe path in associations.
69 server: Fix initialization of mailslot objects that don't have a name.
70 ntdll: Add tests for kernel object names in the various open functions.
71 wine.inf: Add quotes around the wordpad.exe path.
72 server: Implement NtOpenJobObject.
73 ntdll: Add a helper to validate attributes in open calls, and use a common pattern in all calls.
74 ntdll: Add tests for NULL object attributes.
75 server: Use a common helper function to implement open object calls.
76 server: Directly return a structure in get_req_unicode_str().
77 include: Update stdcall and cdecl definitions in crtdefs.h.
78 ntdll/tests: Add a helper function to run tests across all kernel object types.
79 ntdll: Add tests for the length of the object attributes structure.
80 server: Fix checks for a valid directory in object attributes.
81 user32: Add some tests for window station and desktop object names.
82 server: Implement serial port read interval timeouts.
83 server: Don't return an error if the created window station already exists.
84 tools: Add a script to update the ANNOUNCE file at release time.
85 server: Add link_name and unlink_name object operations.
86 server: Use the link_name operation to create named objects.
88 Alistair Leslie-Hughes (5):
89 include: Add GdipGetPenTransform, GdipSetPenTransform declarations.
90 gdiplus/tests: Add Pen Transform tests.
91 olepro32: Add typelib resource.
92 d3d11: Add the Direct3D 11.1 D3D11_FORMAT_SUPPORT enum elements.
93 gdiplus: Implement GdipGetPenTransform.
96 xaudio2: Report incoming underruns to the application.
97 ntdll: Implement SystemLogicalProcessorInformationEx.
103 wpcap: Forward pcap_strerror to msvcrt.strerror.
104 include: Add more OID defines.
107 user32: Correctly update caret state in the server in SetCaretPos.
108 strmbase: Decommit allocator when streaming stops.
111 imm32: Messages from ImmGenerateMessage are sent not posted.
112 usp10: Directional control codes force complex itemization.
113 usp10: Correct math punctuation handling in itemization.
117 ndis.sys: Add NdisAllocateSpinLock stub.
119 Christopher Thielen (4):
120 comctl32: Ensure that toolbar respond only to changes in WM_CAPTURECHANGED handler.
121 comctl32: Ensure that trackbar respond only to changes in WM_CAPTURECHANGED handler.
122 user32: Ensure that button responds only to changes in WM_CAPTURECHANGED handler.
123 user32: A window may be notified with WM_CAPTURECHANGED about itself if SetCapture() is called twice.
125 François Gouget (18):
126 bcrypt/tests: Add a trailing '\n' to some ok() calls.
127 mshtml/tests: Add a trailing '\n' to an ok() call.
128 bcrypt: Add a trailing '\n' to a WARN() call.
129 shell32/tests: Trace the last ShellExecute command whenever a corresponding test fails.
130 shell32/tests: Call okShell() after a shell_execute{_ex}() test.
131 shell32/tests: Trace the association properties for the DDE tests.
132 shell32/tests: Test handling of nonexistent verbs in ShellExecute() & co.
133 shell32/tests: Show that verbs and classes override ShellExecute()'s normal handling of executables.
134 shell32/tests: Fix a couple of okChildPath()/okChildString() mixups.
135 advapi32/tests: Trace the SIDs if they are not as expected.
136 shell32/tests: Add traces to the WaitForInputIdle() hooking process.
137 shell32/tests: Reorder the functions to avoid forward declarations.
138 shell32/tests: Declare childPrintf() as a printf-style function.
139 shell32/tests: Check the child process exit code and close the process handle.
140 shell32/tests: Check for failures in the child process.
141 shell32/tests: Test environment variable inheritance with ShellExecute().
142 shell32/tests: Add server-side DDE checks.
143 ntdll/tests: Fix an infinite loop on platforms where NtQuerySystemInformationEx() is not implemented.
145 Frédéric Delanoy (1):
146 po: Update French translation.
149 wininet/tests: Fix test failures.
150 msi: Include the dialog in the check for duplicate event subscriptions.
151 wined3d: Don't leak the device context on failure in context_create().
152 webservices: Add support for structure types in WsWriteType.
153 webservices: Implement WsWriteElement.
154 webservices: Implement WsWriteValue.
155 webservices: Implement WsWriteAttribute.
156 webservices: Implement WsReadStartAttribute.
157 webservices: Add support for structure types in WsReadType.
158 webservices: Implement WsReadEndAttribute.
159 webservices: Don't validate reader state in read_endelement.
160 webservices: Support more writer states in WsWriteText.
161 webservices: Parse CDATA nodes.
162 webservices: Implement WsWriteStartCData and WsWriteEndCData.
165 ddraw: DDSD_LPSURFACE requires a non-NULL lpSurface.
166 ddraw: DDSCAPS_ALLOCONLOAD doesn't override DDSD_LPSURFACE.
167 ddraw: DDSCAPS_ALLOCONLOAD requires DDSCAPS_TEXTURE.
168 wined3d: Unify WINED3D_RTYPE_TEXTURE and WINED3D_RTYPE_CUBE_TEXTURE.
169 wined3d: Rename WINED3D_RTYPE_VOLUME_TEXTURE to WINED3D_RTYPE_TEXTURE_3D.
170 wined3d: Rename the texture creation flags to WINED3D_TEXTURE_CREATE_*.
171 wined3d: Pass non-NULL rectangles to wined3d_surface_blt() in resolve_depth_buffer().
172 wined3d: Pass non-NULL rectangles to wined3d_surface_blt() in wined3d_device_copy_resource().
173 ddraw: Pass non-NULL rectangles to wined3d_surface_blt() in ddraw_surface_update_frontbuffer().
174 ddraw: Pass non-NULL rectangles to wined3d_surface_blt() in ddraw_surface_blt_clipped().
175 ddraw: Pass non-NULL rectangles to wined3d_surface_blt() in ddraw_surface7_BltFast().
176 wined3d: Pass non-NULL rectangles to wined3d_surface_blt() in wined3d_texture_blt().
177 wined3d: Require non-NULL rectangles in wined3d_surface_blt().
178 d3d9: Pass non-NULL rectangles to wined3d_texture_blt() in d3d9_device_StretchRect().
179 d3d9: Pass non-NULL rectangles to wined3d_texture_blt() in d3d9_device_GetRenderTargetData().
180 wined3d: Require non-NULL rectangles in wined3d_texture_blt().
181 ddraw: Always store a pointer to the wined3d texture in the surface.
182 ddraw: Use wined3d_texture_blt() in ddraw_surface7_BltFast().
183 ddraw: Use wined3d_texture_blt() in ddraw_surface_blt_clipped().
184 ddraw: Use wined3d_texture_blt() in ddraw_surface_update_frontbuffer().
185 ddraw: Use wined3d_texture_blt() in copy_mipmap_chain().
186 ddraw: Print an ERR for non-zero sub-resource indices in ddraw_surface7_Flip().
187 ddraw: Use wined3d_texture_preload() in d3d_device7_PreLoad().
188 ddraw: Use wined3d_texture_get_dc() in ddraw_surface_update_frontbuffer().
189 ddraw: Use wined3d_texture_get_dc() in ddraw_surface7_GetDC().
190 ddraw: Use wined3d_texture_release_dc() in ddraw_surface7_ReleaseDC().
191 wined3d: Use wined3d_texture_get_dc() in device_load_logo().
192 ddraw: Use wined3d_resource_map() in d3d_texture2_Load().
193 ddraw: Use wined3d_resource_map() in surface_lock().
194 ddraw: Use wined3d_resource_unmap() in ddraw_surface7_Unlock().
195 wined3d: Simplify wined3d_rendertarget_view_create_from_sub_resource().
196 wined3d: Use wined3d_rendertarget_view_create() in wined3d_device_init_3d().
197 wined3d: Use wined3d_rendertarget_view_create() in wined3d_device_reset().
198 wined3d: Pass a view to blit_shader.color_fill().
199 wined3d: Pass a view to blit_shader.depth_fill().
200 ddraw: Use wined3d_rendertarget_view_create_from_sub_resource() in ddraw_surface_get_rendertarget_view().
201 wined3d: Merge cubetexture_init() into texture_init().
202 wined3d: Introduce a debug function for struct wined3d_box.
203 ddraw: Move the mip-level dimensions fix-up from ddraw_surface_init() to ddraw_surface_create().
204 ddraw: Use wined3d_texture_get_sub_resource() in ddraw_surface7_Flip().
205 wined3d: Make the "texture" parameter to wined3d_texture_get_sub_resource() const.
206 wined3d: Make the "icb" field in struct wined3d_shader_reg_maps const.
207 wined3d: Make the "icb" field in struct wined3d_shader_instruction const.
210 wineconsole: Apply the new background colour to the visible screen buffer.
211 kernel32: Apply the new background colour to the active line.
212 wineconsole: Apply the selected background colour to the entire font preview dialog.
213 kernel32: Implement the TRUE pathway of GetCurrentConsoleFont.
214 kernel32/tests: Add tests for the TRUE pathway of GetCurrentConsoleFont.
215 wineconsole: Improve a user dialog resource string.
216 user32/tests: Add some expected WPARAM values to the SetFocusComboBox sequences.
218 Huw D. M. Davies (4):
219 bcrypt/tests: Fix incorrect null termination.
220 include: Add IDropSourceNotify.
221 shell32: The attributes is not an array, so don't label it as such.
222 shell32: Set the stream and storage attributes where needed.
225 jscript: Make parse_decimal a more generic helper.
226 jscript: Added new is_finite helper.
227 jscript: Added JSON object stub implementation.
228 jscript: Added JSON.parse implementation.
229 jscript: Added JSON.stringify implementation.
230 jscript: Added JSON tests.
231 bcrypt: Make BCRYPT_HASH_LENGTH tests more generic.
232 bcrypt: Make BCRYPT_HASH_LENGTH implementation more generic.
233 bcrypt: Added BCRYPT_ALGORITHM_NAME property implementation.
234 mshtml: Use script versioning 2 if we're not in quirks mode.
235 jscript: Fixed tests on some old jscript versions.
236 mshtml: Wine Gecko 2.44 release.
239 winecfg: Use better shortcut keys.
242 winspool.drv: If the call to cupsPrintFile fails, print the cups error message.
244 Joachim Priesner (5):
245 scrrun: Implement filesys_DriveExists.
246 scrrun/tests: Move code to get a fixed drive to a function.
247 scrrun: Implement filesys_GetDrive for local drives.
248 comctl32: Fix comments explaining visibleOrder and firstVisible.
249 comctl32: Treeview: Fix crash when deleting the first visible item while bRedraw == false.
252 include: Force stack alignment on x86_64.
255 wined3d: Add EXT_texture_integer extension.
256 wined3d: Set default sampler filtering to NEAREST.
257 wined3d: Add support for integer samplers.
258 wined3d: Make distinction between sampler index and sampler bind index.
259 wined3d: Add ARB_texture_rgb10_a2ui extension.
260 wined3d: Add support for WINED3DFMT_R8G8B8A8_UINT textures.
261 wined3d: Add support for WINED3DFMT_R8G8B8A8_SINT textures.
262 d3d11/tests: Add test for integer textures.
263 d3d10core/tests: Add test for integer textures.
264 wined3d: Recognize SM4 dcl_temps opcode.
265 wined3d: Recognize SM4 else opcode.
266 wined3d: Implement SM4 ieq instruction.
267 wined3d: Implement SM4 ilt instruction.
268 wined3d: Implement SM4 ineg instruction.
269 wined3d: Recognize SM4 not opcode.
270 wined3d: Implement SM4 not instruction.
271 wined3d: Implement SM4 ine instruction.
272 wined3d: Recognize SM4 round_pi opcode.
273 wined3d: Recognize SM4 round_z opcode.
274 wined3d: Implement SM4 round_pi instruction.
275 wined3d: Implement SM4 round_z instruction.
276 wined3d: Recognize SM4 sample_c_lz opcode.
277 wined3d: Recognize SM4 sample_b opcode.
278 wined3d: Validate render state in wined3d_device_set_render_state().
279 ddraw: Return DDERR_INVALIDPARAMS for render states >= D3DSTATE_OVERRIDE_BIAS.
280 wined3d: Add support for WINED3DFMT_R32G32B32_FLOAT format.
281 wined3d: Add support for WINED3DFMT_R16_UNORM format.
282 wined3d: Recognize SM4 icb register.
283 wined3d: Recognize SM4 dcl_immediateConstantBuffer.
284 wined3d: Recognize SM4 dcl_output opcode.
285 wined3d: Recognize SM4 dcl_sampler opcode.
286 wined3d: Fix SM4 exp, log and rsq instructions.
287 wined3d: Clean up naming in shader_sm1.c.
288 wined3d: Recognize SM4 dcl_input_ps opcode.
289 wined3d: Recognize SM4 dcl_input opcode.
290 wined3d: Recognize SM4 dcl_input_ps_sgv opcode.
291 wined3d: Recognize SM4 dcl_input_ps_siv opcode.
292 wined3d: Recognize SM4 dcl_input_sgv opcode.
293 wined3d: Recognize SM4 dcl_output_siv opcode.
294 wined3d: Recognize SM4 dcl_input_siv opcode.
295 wined3d: Recognize SM4 dcl_globalFlags opcode.
296 wined3d: Recognize SM4 sample_c opcode.
297 wined3d: Merge shader_glsl_sample() and shader_glsl_sample_lod().
298 wined3d: Implement SM4 sample_b instruction.
299 wined3d: Implement SM4 sample_d instruction.
300 d3d11/tests: Add test for SM4 sample_b instruction.
301 d3d10core/tests: Add test for SM4 sample_b instruction.
302 d3d11: Rename WINE_D3D10_TO_STR to WINE_D3D_TO_STR.
305 winemac: Make macdrv_process_text_input() asynchronous and process internal events while awaiting its result.
306 winemac: Change the processEvents parameter of -[WineEventQueue query:timeout:processEvents:] to a flags bitmask.
307 winemac: Don't process QUERY_IME_CHAR_RECT while waiting in OnMainThread().
310 user32: Add MOUSEHOOKSTRUCTEX for mouse wheel support.
313 po: Update Finnish translation.
316 wined3d: Improve wined3d_popcount() implementation.
317 wined3d: Limit the number of WINED3D_MULTISAMPLE_NON_MASKABLE quality levels reported.
318 wined3d: Add ARB_internalformat_query extension.
319 d3d9: Return one quality level when the multisampling type isn't available.
320 wined3d: Add a real implementation of wined3d_check_device_multisample_type().
321 wined3d: Fail texture creation when invalid multisample settings are specified.
322 d3d9/tests: Extend test_checkdevicemultisampletype().
323 d3d9/tests: Test the creation of render targets with invalid multisample settings.
324 d3d8/tests: Port test_checkdevicemultisampletype() from d3d9.
325 d3d8/tests: Test the creation of render targets with invalid multisample settings.
326 d3d11: Implement d3d11_device_CheckMultisampleQualityLevels().
327 d3d11: Implement d3d10_device_CheckMultisampleQualityLevels().
328 d3d11/tests: Add a test for CheckMultisampleQualityLevels().
329 d3d11/tests: Test the creation of textures with invalid multisample settings.
330 d3d10core/tests: Add a test for CheckMultisampleQualityLevels().
331 d3d10core/tests: Test the creation of textures with invalid multisample settings.
334 dwrite: Cluster text position is relative to initial run.
335 dwrite: Fix off by one issue in line breaking rule LB21a.
336 dwrite: Update line breaking logic with Unicode 8.0.0 modifications.
337 dwrite: Don't check for line overflow for DWRITE_WORD_WRAPPING_NO_WRAP mode.
338 dwrite: Remove useless assignment (Coverity).
339 dwrite: Fix underline/strikethrough position adjustment caused by text alignment.
340 ctl3d32: Claim success in Ctl3dRegister().
341 d2d1: Support underlined text in DrawTextLayout().
342 po: Update Russian translation.
343 dwrite: Zero width space U+200b is not a whitespace from analyzer/layout point of view.
344 dwrite: Reuse linebreaking whitespace flag when filling cluster metrics.
345 dwrite: Reuse linebreaking isSoftHyphen flag for cluster metrics.
346 dwrite: Fix setting canWrapLineAfter cluster flag.
347 dwrite: Implement DetermineMinWidth() using line breaking info.
348 oleaut32/tests: Fix some test failures.
349 d2d1: Use drawing effect at DrawGlyphRun().
350 dwrite: Fix invalid cluster metrics array index access.
351 dwrite: Line height/baseline includes lineGap as well.
352 dwrite: Fix parameter validation in CreateTextLayout()/CreateGdiCompatibleTextLayout().
353 dwrite/tests: Some tests for layout based on empty text.
354 dwrite: Return valid metrics for layout created on empty text.
355 dwrite: Inline object origin is at top-left corner, not baseline.
356 dwrite: Don't use BOOL defined values for fields that are not BOOL.
357 d2d1: Use drawing effect for underlines.
358 dwrite: Return NULL file pointer on CreateCustomFontFileReference() failure.
359 dwrite: Set isNewline cluster flag.
360 dwrite: Update callback analysis interfaces used by layout internally.
361 dwrite: Use regular refcounting pattern for layout internal sink/source interfaces.
362 dwrite: Implement GetLocaleName() for layout analysis source.
363 dwrite: Implement GetTextBeforePosition() for layout analysis source.
364 dwrite: Remove some redundant includes.
365 dwrite: Fix newlineLength metric to include all newline chars at the end of the line.
366 dwrite: Don't use BOOL values to set bit fields.
367 dwrite: Improve SetScriptAnalysis()/SetBidiLevel() tracing.
368 dwrite: Release drawing effect after trimming sign Draw().
369 dwrite/tests: Test that soft hyphen is not marked as a whitespace.
370 dwrite: Add a zero width line after last mandatory breakpoint.
371 dwrite: Invalidate layout on all cases of attribute change.
372 dwrite: Implement SetFlowDirection() for layout.
373 dwrite: Implement SetLineSpacing() for layout.
374 dwrite/tests: Skip tests if no English family name was returned.
375 dwrite: Rework Analyze() to make it easier to extend.
376 dwrite: Recognize Type1 .pfb files in Analyze().
377 dwrite/tests: Remove failing test line, we have skips for this now.
380 mscoree: Make vtable and tokens local declarations arch independent.
381 mscoree: Implement VTable fixup for x86_64 architecture.
382 msvcrt: Handle of thread created by _beginthread should not be closed on thread detach.
383 mscoree: Add FixupVTable_Assembly function which takes preloaded assembly headers.
384 mscoree: Call native DllEntryPoint when it is defined in COR header.
386 Pierre Schweitzer (2):
387 mpr: Add support for REG_EXPAND_SZ for providers path.
388 mpr/tests: Add tests for WNetUseConnectionA().
391 oleaut32: Fix best version handling in QueryPathOfRegTypeLib when type library redirection is used.
392 oleaut32: Add support for best version argument in LoadRegTypeLib.
393 server: Avoid infinite loop when we're out of timers in set_win_timer server call.
394 user32: Test error returned in out of timers case.
395 oleaut32: Update cdguid on data reallocation in WMSFT_compile_custdata.
396 oleaut32: Add ICreateTypeLib2::SetCustData implementation.
397 oleaut32: Add ICreateTypeLib2::SetCustData tests.
399 Riccardo Bortolato (3):
400 d3d9: Implement d3d9_device_UpdateSurface() on top of wined3d_device_copy_sub_resource_region().
401 d3d9: Replace wined3d surface refcounting with texture refcounting.
402 wined3d: Get rid of the surface refcounting functions.
404 Sebastian Lackner (2):
405 server: Add missing check for objattr variable in load_registry wineserver call (Coverity).
406 server: Avoid invalid memory access if creation of namespace fails in create_directory (Coverity).
408 Snorri Sturluson (1):
409 ntdll: Fill in memory counters under OS X.
412 ddraw/tests: Port test_lockrect_invalid to other versions.
415 kernel32/tests: Add tests for GetTimeZoneInformationForYear.
416 kernel32: Implement GetTimeZoneInformationForYear.