1 The Wine development release 1.9.14 is now available.
3 What's new in this release (see below for details):
4 - More Shader Model 5 support in Direct3D.
5 - Some more write support in WebServices.
6 - Performance improvements in GDI.
7 - Some more progress towards the Direct3D command stream.
10 The source is available from the following locations:
12 http://dl.winehq.org/wine/source/1.9/wine-1.9.14.tar.bz2
13 http://mirrors.ibiblio.org/wine/source/1.9/wine-1.9.14.tar.bz2
15 Binary packages for various distributions will be available from:
17 http://www.winehq.org/download
19 You will find documentation on http://www.winehq.org/documentation
21 You can also get the current source directly from the git
22 repository. Check http://www.winehq.org/git for details.
24 Wine is available thanks to the work of many people. See the file
25 AUTHORS in the distribution for the complete list.
27 ----------------------------------------------------------------
29 Bugs fixed in 1.9.14 (total 20):
31 13183 Control '' has no parent window in ExpressQuantumGrid
32 18659 Kingsoft Office 2012 can't read it's default file
33 23855 System Tray Icons Not Appearing In Mac System Tray
34 28860 AveraSell 4.3.8 crashes after login (heap corruption)
35 29702 Kingsoft Office 2012 Free: Crashes almost immediately after full load
36 35123 Shattered Horizon requires d3dx10_43.dll.D3DX10CompileFromMemory
37 35962 OPML Editor crashes
38 37485 Spellforce Platinium edition - graphical bug - black columns come out of the ground
39 37989 COD4 is missing textures
40 39842 Skype for windows doesn't work (needs ndis.sys.NdisSystemProcessorCount)
41 40413 Crashes after start of application Vermoegensbilanz and accepting license terms
42 40588 Multiple games (Fallout 4 and Unreal Engine 4 games) need d3d11_device_CreateUnorderedAccessView
43 40722 Warcraft 3: minimizes when clicking on the bottom
44 40792 Multiple 64-bit Unreal Engine 4 games crash at start (Direct3DDevice->CheckFeatureSupport(D3D11_FEATURE_THREADING,&ThreadingSupport,sizeof(ThreadingSupport)) failed)
45 40830 Conflict between kVK_RightCommand and macOS 10.12 Sierra in carbon framework
46 40833 Batman: Arkham Origins Blackgate no sound during gameplay (except cutscenes)
47 40851 macOS 10.12 Build Failure in winspool.drv with cupsGetPPD
48 40876 Guitar Rig 5 Crashes On Load (needs msvcr120.dll.fegetenv)
49 40909 Flame in the flood needs depth-stencil support for R16_TYPELESS
50 40934 webservices error: redefinition of typedef 'WS_XML_NODE_POSITION'
52 ----------------------------------------------------------------
56 Aaryaman Vasishta (5):
57 d3drm: Use a table in d3drm3_CreateObject() to create objects in a generic manner.
58 d3drm: Introduce d3drm_viewport_destroy().
59 d3drm: Rearrange version 1 functions after version 2 for IDirect3DRMViewport*.
60 d3drm: Move IUnknown methods of viewports from version 1->2.
61 d3drm: Fix device not assigning width and height after creation.
64 kernel32: Fix memory leak in WCEL_MoveToHist.
65 kernel32: Fix memory leak in WCEL_FindPrevInHist.
67 Alexandre Julliard (2):
68 tools: Update all makefiles in a single pass.
69 tools: Compare file contents directly in Perl instead of invoking cmp.
71 Alistair Leslie-Hughes (16):
72 d3dx9_34: Share the source with d3dx9_36.
73 d3dx9_35: Share the source with d3dx9_36.
74 d3dx9_37: Share the source with d3dx9_36.
75 d3dx9_38: Share the source with d3dx9_36.
76 d3dx9_39: Share the source with d3dx9_36.
77 d3dx9_40: Share the source with d3dx9_36.
78 d3dx9_41: Share the source with d3dx9_36.
79 d3dx9_42: Share the source with d3dx9_36.
80 d3dx9_43: Share the source with d3dx9_36.
81 propsys: Add semi-stub for PropVariantToStringAlloc.
82 propsys: Support VT_LPWSTR in PropVariantChangeType.
83 inetcomm: Implement IMimeBody DeleteProp.
84 inetcomm: Ignore option OID_CLEANUP_TREE_ON_SAVE.
85 inetcomm: Return S_OK from IMimeMessgae Commit.
86 inetcomm: Support LPSTR to LPWSTR conversion in GetProp.
87 include: Complete IMimeAddressTable interface definition.
90 xaudio2: Always set current OpenAL context before making AL calls.
93 d3dx10: Implement D3DX10CompileFromMemory.
94 d3dx11: Fix a typo in TRACE() message.
95 pstorec: Fix a typo in PStore_fnOpenItem declaration.
96 include: Fix a typo in IPStore interface.
97 wined3d: Fix a typo in comment.
98 po: Update Ukrainian translation.
101 winspool: Implement SetPrinterW for level 8.
102 ws2_32/tests: Turn a randomly behaving test into a trace.
105 po: Update Lithuanian translation.
108 include: Add wmium.h.
109 advapi32: Add stubs for some advapi32 wmi functions.
111 Benjamin Hodgetts (1):
112 wined3d: Add Intel Iris chips to identification list.
114 Detlef Riekenberg (1):
115 dsound: Mark a multiplication factor as float.
117 Dmitry Timoshkov (2):
118 user32: Properly handle invalid parameters in CharToOem[Buff]A and OemToChar[Buff]A.
119 user32: Properly handle invalid parameters in CharToOem[Buff]W and OemToChar[Buff]W.
121 François Gouget (11):
122 exdisp.idl: Fix a typo in a method name.
123 ws2_32/tests: Fix a typo in a comment.
124 ntdll: Fix typos in some comments.
125 mfdrv: Fix a typo in a comment.
126 regedit: Make get_token() static.
127 kernel32: Fix typos in a couple of comments.
128 d3drm/tests: Fix typos in a couple of ok() messages.
129 mshtml: Nswindow_to_window() is not used anymore, remove it.
130 mshtml: Fix a typo in a TRACE() message.
131 mmdevapi/tests: Fix typos in a few ok() messages.
132 regedit: Make GetwideString() static.
135 winex11.drv: Use wine_dbgstr_point in TRACES.
138 webservices/tests: Add tests for WsWriteXmlBuffer.
139 webservices: Implement WsGetReaderPosition.
140 webservices: Implement WsSetReaderPosition.
141 webservices: Decode XML entities.
142 webservices: Implement WsWriteNode.
143 webservices: Add support for UTF-16 text values in the writer.
144 webservices: Insert start/end element nodes at the same time in the reader.
145 webservices: Implement WsCopyNode.
146 webservices: Support more text value types in the writer.
147 webservices: Add support for writing double values.
148 webservices: Inherit the prefix only if parent and child namespaces match.
149 webservices: Allow integer values to be passed by pointer in WsWriteType.
150 webservices: Return the number of bytes written from WsWriteXmlBufferToBytes.
151 webservices: Implement WsCreateMessageForChannel.
152 webservices: Implement WsInitializeMessage.
153 webservices: Implement WsAddressMessage.
154 webservices: Implement WsWriteEnvelopeStart.
155 webservices: Implement WsWriteEnvelopeEnd.
156 webservices: Implement WsWriteBody.
159 wined3d: Send resource destruction through the command stream.
160 wined3d: Call the sub-resource destruction callbacks in wined3d_texture_cleanup().
161 wined3d: Send texture destruction through the command stream.
162 wined3d: Send buffer destruction through the command stream.
163 wined3d: Synchronise resource destruction with the command stream.
166 reg: Free szValue after deleting all registry values (Coverity).
167 regedit: Parse command-line input using Unicode.
168 regedit: Use WINAPI functions for better internationalization.
169 regedit: Process the next file, if any, on error.
171 Huw D. M. Davies (9):
172 riched20: Add an option to constrain the run search to the current para.
173 riched20: Pass the correct range to the EN_LINK notification when the link is wrapped.
174 gdi32: Use the add_rect() helper to add a rectangle.
175 gdi32: Try to coalesce into wider bands.
176 gdi32: Try to compact the region.
177 gdi32: Use a binary search to generate the clipped rects.
178 gdi32: Use a binary search for PtInRegion() and RectInRegion().
179 gdi32: Precompute the destination colours for sources with a colour table.
180 gdi32: Add get_any_obj_ptr() to retrieve the ptr and type of a GDI handle.
183 msvcirt: Cast to unsigned char before promotion to int.
184 msvcirt/tests: Remove unnecessary casts.
187 mshtml.idl: Added IHTMLElement6 declaration.
188 mshtml: Added IHTMLElement6 stub implementation.
189 mshtml: Added IHTMLElement6::on* properties implementation for supported events.
190 mshtml: Added FIXME for drag and dragstart events.
191 mshtml: Added IHTMLElement::ondragstart and onhelp properties implementation.
192 mshtml: Added IHTMLElement2::onscroll and onresize properties implementation.
193 mshtml: Added missing release_dispex call in HTMLRect destructor.
194 mshtml: Added IHTMLElement6::getElementsByClassName implementation.
195 mshtml.idl: Added IHTMLElement6 methods to element dispinterfaces.
196 mshtml: Specify locale in VarBstrFrom* calls.
197 rpcrt4: Forward RpcServerRegisterAuthInfoA to RpcServerRegisterAuthInfoW.
198 rpcrt4: Moved EnumerateSecurityPackagesW call to helper function.
199 rpcrt4: Moved AcquireCredentialHandle call to RPCRT4_ServerGetRegisteredAuthInfo.
200 rpcrt4: Added RpcServerRegisterAuthInfoW failure test.
201 secur32: Added Kerberos provider stub implementation.
202 wininet: Include stdlib.h before winsock2.h in http.c.
203 mshtml: Added scripted XHR tests with emulated HTTP connection.
204 mshtml: Rewrite navigation tests using new HTTP emulation framework.
205 mshtml: Moved dispex_data_t pointer to the end of dispex_static_data_t struct.
206 mshtml: Added a helper to get vtbl from DispatchEx and use it to access vtbl outside dispex.c.
207 mshtml: Store function buffer size in dispex_data_t.
208 mshtml: Preprocess typelib data in init_dispex.
209 mshtml: Store dispex_data_t pointer instead of dispex_static_data_t in DispatchEx.
210 mshtml: Get rid of no longer needed get_dispex_data function.
211 mshtml: Store compatibility mode provided by meta element.
212 mshtml: Added IHTMLDocument6::get_documentMode implementation.
213 mshtml: Expose IHTMLDocument6 to IDispatch.
214 mshtml: Set compatibility mode based on doctype.
215 mshtml: Added document.documentMode tests.
216 mshtml: Reimplement IHTMLDocument5::get_compatMode based on document mode.
217 mshtml: Use callback to register additional IDispatch interfaces.
218 wininet: Free all cookie data in free_cookie.
219 wininet: Always set returned size in InternetGetCookieExA.
220 wininet: Added semi-stub INTERNET_OPTION_END_BROWSER_SESSION implementation.
221 mshtml: Added support for exposing different sets of properties from DispatchEx depending on compatibility mode.
222 mshtml: Properly handle duplicated names with different DISPIDs in add_func_info.
223 mshtml: Export IElementSelector for all elements in compatibility mode >= IE8.
224 wscript: Added WScript.Quit tests.
225 mshtml: Removed no longer used nav_test.html file.
228 d3d11: Implement d3d11_immediate_context_OMGetBlendState().
229 d3d11: Implement d3d11_immediate_context_OMGetDepthStencilState().
230 d3d11: Implement ID3D11UnorderedAccessView interface.
231 d3d11/tests: Avoid using -1 in place of unsigned integer.
232 d3d10core/tests: Avoid using -1 in place of unsigned integer.
233 d3d11: Avoid signed/unsigned comparison.
234 wined3d: Add missing system-value semantics.
235 wined3d: Recognize SM5 emit_stream opcode.
236 wined3d: Recognize SM5 dcl_stream opcode.
237 wined3d: Implement SM4 indexable temporary registers in GLSL backend.
238 d3d11/tests: Add test for creating unordered access views.
239 wined3d: Recognize SM5 cut_stream opcode.
240 wined3d: Recognize SM5 swapc opcode.
241 wined3d: Implement SM4 continue instruction.
242 wined3d: Do not limit temporary register count to 32 in SM4+.
243 wined3d: Allow to create WINED3DFMT_R{16, 32}_TYPELESS depth textures.
244 wined3d: Implement d3d11_immediate_context_Begin().
245 d3d11: Implement d3d11_immediate_context_End().
246 d3d11: Implement d3d11_immediate_context_GetData().
247 d3d11: Implement d3d11_query_GetDataSize().
248 d3d11/tests: Port test_timestamp_query() from d3d9.
249 d3d11/tests: Mention debug flags when device creation fails.
250 d3d11: Implement d3d10_query_GetDataSize().
251 d3d11: Implement d3d10_query_Begin().
252 d3d11: Implement d3d10_query_End().
253 d3d11: Implement d3d10_query_GetData().
254 d3d10core/tests: Port test_timestamp_query() from d3d9.
255 wined3d: Recognize SM5 bfrev opcode.
256 wined3d: Implement SM5 emit_stream instruction for stream 0.
257 wined3d: Implement SM5 cut_stream instruction for stream 0.
258 wined3d: Add more D3D10+ vertex formats.
259 d3d11/tests: Add test for vertex formats.
260 d3d10core/tests: Add test for vertex formats.
261 wined3d: Implement immediate constant buffer in GLSL backend.
262 d3d11/tests: Add test for immediate constant buffer.
265 winspool.drv: Include <cups/ppd.h> to fix building against the macOS 10.12 SDK.
268 po: Update Norwegian translation.
270 Kirill K. Smirnov (1):
271 winex11.drv: Fix an uninitialized variable (clang).
274 po: Update Finnish translation.
275 comdlg32: Init clipboard format only once in filedlg.
276 comdlg32: Avoid generating filenames twice in filedlg.
277 comdlg32: Avoid repeated GlobalLock etc in filedlg.
280 dwrite: Use correct collection (Coverity).
283 d3dx9_42: Drop D3DXGatherFragments* exports.
284 d3dx9: Sync ordering of D3DXComputeIMTFromPerVertexSignal spec entry.
285 d3dx9: Avoid overflowing debug channel buffer when tracing ASCII effect errors.
288 secur32: Added support for a few more algids.
291 shell32: Correctly compare result of SHFileOperation in UNIXFS copy/delete functions.
292 wininet/tests: Fix some typos in ok() messages.
293 ntdll: Do not sort InMemoryOrderModuleList by memory address.
294 wininet: Correctly set lpszUrlPath in InternetCrackUrlW for urls without path component.
296 Michael Stefaniuc (48):
297 gdiplus: Use SetRect() instead of open coding it.
298 d3dx10/tests: Use SetRect() instead of open coding it.
299 d3dx9/tests: Use SetRect() instead of coding it.
300 cards: Use SetRect() instead of open coding it.
301 d3d9/tests: Use SetRect() instead of open coding it.
302 d3d10core/tests: Use SetRect() instead of open coding it.
303 wined3d: Use SetRect() instead of open coding it.
304 mciavi32: Use SetRect() instead of open coding it.
305 strmbase: Use SetRect() instead of open coding it.
306 mshtml: Don't cast from an iface to a COM object.
307 ole32: Use the proper COM method wrapper.
308 shell32/tests: Avoid casts from a COM object to an iface.
309 include: Add inline variants of InflateRect and OffsetRect too.
310 user32: Use InflateRect() instead of open coding it.
311 winemine: Use SetRect() instead of open coding it.
312 wordpad: Use SetRect() instead of open coding it.
313 wordpad: Use InflateRect() instead of open coding it.
314 msxml3: Don't cast from a COM object to an iface.
315 riched20/tests: Use InflateRect() instead of open coding it.
316 comctl32: Use InflateRect() instead of open coding it.
317 comdlg32: Use InflateRect() instead of open coding it.
318 pstorec: Get rid of a cast from a COM object to an iface.
319 dispex/tests: Get rid of a cast from a COM object to an iface.
320 msimtf: Get rid of a cast from a COM object to an iface.
321 msctf: Get rid of a cast from a COM object to an iface.
322 user32: Use InflateRect() too when stretching the RECT in just one axis.
323 ddraw: Get rid of a cast from a COM object to an iface.
324 qedit: Avoid casting a COM object to an iface.
325 ole32: Standardize COM aggregation for the FreeThreadedMarshaler.
326 gdi32: Use wine_dbgstr_rect() to trace a RECT.
327 user32/tests: Use wine_dbgstr_rect() to print RECTs.
328 ole32: Avoid casts from the IMultiQI iface to the COM object.
329 ole32: Standardize COM aggregation for the DataCache.
330 riched20/tests: Use wine_dbgstr_rect() to print RECTs.
331 wineps.drv: Use wine_dbgstr_rect() to print a RECT.
332 gdi32: Remove a redundant NULL check before HeapFree().
333 winetest: Remove redundant NULL checks before heap_free().
334 quartz: Remove redundant NULL checks before CoTaskMemFree().
335 shell32/tests: Remove redundant NULL checks before CoTaskMemFree().
336 devenum: Remove redundant NULL checks before CoTaskMemFree().
337 qcap/tests: Remove a redundant NULL check before CoTaskMemFree().
338 qedit: Remove redundant NULL checks before CoTaskMemFree().
339 winmm: Remove redundant NULL checks before CoTaskMemFree().
340 msvcrt: Remove redundant NULL checks before free().
341 urlmon: Remove a redundant NULL check before CoTaskMemFree().
342 ntdll: Remove a redundant NULL check before RtlFreeHeap().
343 ole32: Remove a redundant NULL check before CoTaskMemFree().
344 wined3d: Remove a redundant NULL check before HeapFree().
347 regedit: Fix error message format (Coverity).
348 dwrite: Improve script mapping generation.
349 dwrite: Keep original script for NO_VISUAL case.
350 dwrite: Return some of font properties from IDWriteFontFace3 methods.
351 dwrite: Implement HasVerticalGlyphVariants().
352 dwrite: Implement another CreateFontFace() variant.
353 dwrite: Fix recently added script properties.
354 msxml3: Remove redundant refcount field.
355 include: Added IDWriteFontSetBuilder definition.
356 xmllite/writer: Initial support for indented output.
357 dwrite: Check all 'vert' lookups, not just the first one.
358 po: Update Russian translation.
359 mmdevapi: Use regular list iterator.
360 crypt32: Use regular list iterator when there's no need for safe one.
361 dwrite: Partially implement GetSystemFontCollection().
362 xmllite/writer: Support trivial case of WriteAttributeString().
365 winemac.drv: Don't assume that owner is top-level window in set_cocoa_window_properties.
366 winex11.drv: Don't assume that owner is top-level window in set_style_hints.
367 msvcr120: Add fegetenv implementation.
368 msvcrt: Remove unused call_dtor function.
369 ntdll: Add RtlRestoreContext implementation.
370 msvcrt: Improve x86_64 nested exceptions handling.
371 riched20: Add support for ECO_NOHIDESEL flag.
372 msvcrt: Use debugstr_a to trace strings in __unDName function.
373 msvcrt: Return error when previously parsed type is accessed while demangling simple data type.
375 Sebastian Lackner (7):
376 include: Remove duplicate definition of WS_XML_NODE_POSITION.
377 gdi32: Fix copy & paste mistake in a comment.
378 wininet: Use list_head get first entry of list.
379 jscript: Use list_head get first entry of list.
380 kernel32/tests: Add a test for sorting of InMemoryOrderModuleList.
381 wininet/tests: Avoid unnecessary initialization of variables.
382 wininet/tests: Add a test for recently introduced regression related to InternetCrackUrl.
385 ddraw/tests: P8 color keying does not work on WARP.
386 wined3d: Avoid reading freed memory when destroying shader resource views.
387 wined3d: Destroy the resource after view in wined3d_unordered_access_view_decref.
388 wined3d: Destroy the resource after view in wined3d_rendertarget_view_decref.
391 wscript: Added WScript.Quit semi-stub implementation.
394 winhttp: Avoid buffer overrun in alloc_handle.
395 winhttp: Return NULL on failure in alloc_handle.
396 wordpad: Remove superfluous check in registry_set_filelist.
397 netapi32: Avoid buffer overrun in NetBTNameEncode.
398 usp10: Avoid buffer overrun in ReplaceInsertChars.
401 gdiplus: Account for world transform in GdipGraphicsClear.
402 gdiplus: Clip metafile drawing to destination points.
403 gdiplus: Implement writing Clear operation to metafiles.
404 gdiplus: Implement playback of Clear operations.
405 gdiplus: Account for GDI+ drawing operations in the metafile frame.