1 The Wine development release 8.0-rc1 is now available.
3 This is the first release candidate for the upcoming Wine 8.0. It
4 marks the beginning of the yearly code freeze period. Please give this
5 release a good testing and report any issue that you find, to help us
6 make the final 8.0 as good as possible.
8 What's new in this release:
9 - Bundled vkd3d upgraded to version 1.6.
10 - Vulkan and OpenGL thunking optimizations.
11 - More support for print processors.
12 - Improved joystick control panel.
13 - Long types printf format conversion finished.
16 The source is available at:
18 https://dl.winehq.org/wine/source/8.0/wine-8.0-rc1.tar.xz
20 Binary packages for various distributions will be available from:
22 https://www.winehq.org/download
24 You will find documentation on https://www.winehq.org/documentation
26 You can also get the current source directly from the git
27 repository. Check https://www.winehq.org/git for details.
29 Wine is available thanks to the work of many people. See the file
30 AUTHORS in the distribution for the complete list.
32 ----------------------------------------------------------------
34 Bugs fixed in 8.0-rc1 (total 52):
36 - #28290 shell32:shelllink - test_load_save() crashes randomly in Wine
37 - #36681 ws2_32/tests/sock.c fails on gentoo without IPX support
38 - #46649 Multiple applications need D3DXDisassembleShader() implementation (Tom Clancy's Rainbow Six: Vegas 2, The Void)
39 - #48105 kernel32:console fails on Japanese and Chinese Windows
40 - #51234 user32:clipboard test_ClipboardOwner() has a race condition with clipboard managers
41 - #51456 oleaut32:typelib: test_CreateTypeLib(SYS_WIN32) fails in 64-bit Wine
42 - #51457 The 32-bit version:install fails in 64-bit wineprefixes (now todo)
43 - #51780 The user32:msg output is too big in Wine
44 - #52507 user32:win has some spurious GetScrollInfo failures
45 - #52875 riched20:editor fails with the UTF-8 code page
46 - #52877 user32:msg - test_dbcs_wm_char() fails in Wine in the Japanese and Chinese locales
47 - #52909 rpcrt4:ndr_marshall crashes on the latest Windows 8.1, 21H1 and 21H2
48 - #52910 mshtml:htmldoc fails on Windows with the UTF-8 codepage
49 - #52965 kernel32:locale - test_GetLocaleInfoW() and test_invariant() fail on Windows in Hindi
50 - #52980 conhost.exe:tty - test_tty_input() fails in most locales on Windows
51 - #53183 shell32:shelllink - test_load_save() randomly fails to delete test.lnk in Wine
52 - #53199 dinput:force_feedback - test_windows_gaming_input() sometimes has unexpected reference counts in Wine
53 - #53207 user32:msg - test_button_messages() fails randomly in Windows and Wine
54 - #53208 user32:msg - The SW_SHOWMINIMIZED test in test_messages() succeeds in Wine with fvwm
55 - #53211 ddraw:ddraw1 has over 255 failures on the debian11 TestBot VMs
56 - #53233 ddraw:ddraw1 - test_clear() has rare failures in Wine on the debian11 VM
57 - #53240 dinput:device8 - test_sys_mouse() has some rare failures on the TestBot VMs
58 - #53254 urlmon:url - test_URLDownloadToFile_abort() sometimes fails on Windows 7+
59 - #53327 Ragnarok Online bad performance
60 - #53342 quartz:mpegaudio - The 64-bit test_streaming_events() times out on fg-deb64
61 - #53530 mshtml:htmldoc - test_editing_mode(TRUE, TRUE) sometimes fails
62 - #53568 16bit applications refuse to start wine 7.15+
63 - #53646 Multiple installers crash in user32 (Drakan, Star Wars, Colin McRae, X-COM, etc.)
64 - #53678 vbscript can not compile CaseClausules that do not use a colon
65 - #53684 ntdll:info is broken on Windows 8 to 10 1709 in the GitLab WineTest builds
66 - #53686 The 64-bit kernel32:console is broken on Windows in the GitLab WineTest builds
67 - #53783 vbscript can not compile private const expressions
68 - #53814 TMUnlimiter 1.2.0.0 requires ini files with whitespace in the section to be parsed properly
69 - #53895 ddraw:ddraw1, ddraw:ddraw2, ddraw:ddraw4, ddraw:ddraw7 - test_cursor_clipping() fails on dual screen setups in Wine
70 - #53927 script56.chm help file pages not functioning properly due to wine missing beforeprint and afterprint html events
71 - #53950 dup2 error returns ENFILE instead of EBADF
72 - #53964 Redim should fail on fixed arrays
73 - #53966 NCryptExportKey is not implemented
74 - #53968 NCryptSignHash is not implemented
75 - #53971 postgresql installer 9.3 needs support for Username in WScript.Network
76 - #53972 BCryptSignHash does not support BCRYPT_PAD_PSS
77 - #53987 Regression in print handling in Framemaker 8
78 - #53996 MDB Viewer Plus: can not open database
79 - #53999 JGlossator crashes
80 - #54009 Wine segfaults on startup on macOS 12 and 13
81 - #54012 kernel32:heap - The 64-bit test_GlobalAlloc() fails on Windows 7
82 - #54043 Studio One Professional 5 crash on launch with an unimplemented function USER32.dll.RegisterSuspendResumeNotification
83 - #54057 prints do not work in any application
84 - #54075 wldap32:parse - test_ldap_paged_search() sometimes gets LDAP_SERVER_DOWN in Wine, crashes
85 - #54087 mshtml:events sometimes gets a failure in Protocol_Continue() on Windows
86 - #54098 winhttp:notification fails and times out systematically in Wine
87 - #54111 Unable to run "make install" after "makedep: Add a helper function to skip spaces in strings."
89 ----------------------------------------------------------------
94 wldap32: Use the strdup function instead of reimplementing it.
95 mshtml: Remove string constant macros from navigate.c.
96 wininet: Simplify memory allocation in HTTP_InsertCustomHeader.
97 comctl32: Use standard C functions for memory allocation in edit.c.
98 atl: Fix memory leak on error path in do_process_root_key (scan-build).
99 vbscript: Fix memory leak on realloc failure in Global_Split (cppcheck).
100 shell32: Rename ShellItem to struct shell_item.
101 include: Add shobjidl_core.idl.
102 include: Annotate StrDup[AW] with __WINE_MALLOC and __WINE_DEALLOC.
103 hhctrl: Use standard C functions for memory allocation.
104 mountmgr: Use standard C functions for memory allocation.
105 include: Annotate I_RpcAllocate with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
106 services: Use standard C functions for memory allocation.
107 include: Annotate WlanAllocateMemory with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
108 include: Define __stat64.
109 msi: Use the wcsdup function instead of reimplementing it.
110 include: Annotate ber_(alloc_t|bvdup|init) with __WINE_(DEALLOC|MALLOC).
111 include: Annotate SnmpUtilMem(Re)Alloc with __WINE_(DEALLOC|MALLOC).
112 mshtml: Annotate nsalloc with __WINE_(DEALLOC|MALLOC).
113 rpcrt4/tests: Don't use an array of pointers in test_conf_complex_struct.
114 comctl32: Annotate (Re)Alloc with __WINE_(DEALLOC|MALLOC).
115 wiaservc: Remove unused function wiaservc_strdup.
116 include: Move wdbgexts.h from dbghelp to include.
117 shell32: Don't use GetProcAddress for GetOpenFileName[AW].
118 winecfg: Use standard C functions for memory allocation.
119 winecfg: Annotate allocation functions with __WINE_(DEALLOC|MALLOC).
120 quartz/tests: Remove redundant null check from testfilter_JoinFilterGraph.
121 rpcrt4: Use standard C functions for memory allocation.
122 dbghelp: Annotate allocation functions with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
123 include: Annotate CreateThreadpool* with __WINE_(DEALLOC|MALLOC).
124 kernel32/tests: Use the strcasecmp function instead of reimplementing it.
125 setupapi: Use _S_I(READ|WRITE) from sys/stat.h instead of redefining them.
126 setupapi: Move prototypes not in Windows's setupapi.h to setupapi_private.h.
127 msi: Use _O_* constants from fcntl.h instead of redefining them.
128 msi: Remove wrappers around CRT memory allocation functions.
129 include: Annotate WSDAllocateLinkedMemory with __WINE_(ALLOC_SIZE|MALLOC).
130 winhlp32: Use standard C functions for memory allocation.
131 include: Annotate MFHeapAlloc with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
132 include: Annotate (Alloc|Realloc)ADs* with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
133 include: Annotate GdipAlloc with __WINE_(DEALLOC|MALLOC).
134 include: Annotate ILC* functions with __WINE_(DEALLOC|MALLOC).
135 include: Add corecrt_malloc.h.
136 wsdapi: Annotate duplicate_(string|name) with __WINE_MALLOC.
137 cmd: Use standard C functions for memory allocation.
139 Alexandre Julliard (84):
140 avicap32: Use the Unix call helpers.
141 capi2032: Use the Unix call helpers.
142 ctapi32: Use the Unix call helpers.
143 dnsapi: Use the Unix call helpers.
144 gphoto2.ds: Use the Unix call helpers.
145 msv1_0: Use the Unix call helpers.
146 netapi32: Use the Unix call helpers.
147 qcap: Use the Unix call helpers.
148 sane.ds: Use the Unix call helpers.
149 winspool.drv: Use the Unix call helpers.
150 wpcap: Use the Unix call helpers.
151 ntdll: Also fixup the delay import directory when mapping a .so dll.
152 winebuild: Add a helper function to output a thunk data pointer.
153 winebuild: Use RVAs instead of absolute addresses in the delay import descriptors.
154 winebuild: Generate a separate helper for each delay-imported module.
155 winebuild: Pass the delay import descriptor to the __wine_spec_delay_load function.
156 winebuild: Call __delayLoadHelper2 to resolve delay imports also on non-PE builds.
157 opengl32: Fix calling convention of Unix call entry points.
158 ntdll: Export the Unix call dispatcher function pointer.
159 ntdll: Implement a faster Unix call dispatcher on i386.
160 ntdll: Implement a faster Unix call dispatcher on x86_64.
161 ntdll: Implement a faster Unix call dispatcher on ARM64.
162 ntdll: Implement a faster Unix call dispatcher on ARM.
163 wow64cpu: Add a custom 32->64 thunk for Unix calls.
164 ntdll: Replace the __wine_unix_call() syscall by a function calling through the dispatcher.
165 configure: Remove obsolete AL/al.h check.
166 setupapi: Fix wildcard matching for fakedlls inside the build dir.
167 ntdll: Only build the wow64 function table on 64-bit.
168 ntdll: Use ret instead of jmp to return from syscall dispatchers.
169 winebuild: Reinstate the __wine_spec_dll_entry() entrypoint for .so dlls.
170 ntdll: Move the .so module initialization to winecrt0.
171 ntdll: Initialize Unix calls early during startup.
172 opengl32: Fix GLdouble type alignment on the Unix side.
173 opengl32: Pass the TEB pointer in the Unix call parameters.
174 opengl32: Don't free memory at process exit.
175 png: Import upstream release 1.6.39.
176 mpg123: Import upstream release 1.31.1.
177 kernelbase: Update timezone data to version 2022g.
178 winebuild: Avoid quoting section names.
179 winebuild: Put the delay import thunk in a separate section.
180 include: Use proper dllimports for advapi32 functions.
181 include: Use proper dllimports for lz32 functions.
182 include: Use proper dllimports for version functions.
183 include: Use proper dllimports for gdi32 functions.
184 include: Use proper dllimports for user32 functions.
185 include: Use proper dllimports for shlwapi functions.
186 include: Use proper dllimports for rpcrt4 functions.
187 include: Use proper dllimports for OLE functions.
188 include: Use proper dllimports for crypt32 functions.
189 include: Use proper dllimports for comctl32 functions.
190 include: Use proper dllimports for comdlg32 functions.
191 include: Use proper dllimports for winhttp functions.
192 include: Use proper dllimports for wininet functions.
193 include: Use proper dllimports for shell32 functions.
194 include: Use proper dllimports for winsock functions.
195 vkd3d: Import upstream release 1.6.
196 makedep: Add the default Unix libraries also when building .dll.so files.
197 makedep: Add a helper function to skip spaces in strings.
198 ldap: Use LONG instead of long for exported types.
199 msvcrt: Fix printf format warnings on ARM platforms.
200 ntdll: Fix printf format warnings on ARM platforms.
201 oleaut32: Fix printf format warnings on ARM platforms.
202 winedbg: Fix printf format warnings on ARM platforms.
203 winspool.drv: Remove a no longer used inline function.
204 kernel32/tests: Fix an uninitialized variable warning.
205 kernelbase/tests: Fix an uninitialized variable warning.
206 makedep: Fix parsing of man page section.
207 configure: Simplify checks for functions that require an external library.
208 configure: Only require frame pointer on the MSVCRT side.
209 configure: Enable printf format warnings for 64-bit PE builds.
210 commdlg: Consistently use %I printf format for ULONG_PTR values.
211 gdi.exe: Consistently use %I printf format for ULONG_PTR values.
212 kernel32/tests: Consistently use %I printf format for ULONG_PTR values.
213 mmsystem: Consistently use %I printf format for ULONG_PTR values.
214 msacm: Consistently use %I printf format for ULONG_PTR values.
215 msvcrt: Consistently use %I printf format for ULONG_PTR values.
216 msvideo: Consistently use %I printf format for ULONG_PTR values.
217 ntdll: Consistently use %I printf format for ULONG_PTR values.
218 setupx: Consistently use %I printf format for ULONG_PTR values.
219 shell: Consistently use %I printf format for ULONG_PTR values.
220 user.exe: Consistently use %I printf format for ULONG_PTR values.
221 wintab: Consistently use %I printf format for ULONG_PTR values.
222 winecrt0: Include basetsd.h to get the _WIN64 definition.
223 apisetschema: Add a few more API sets pointing to existing dlls.
226 quartz/tests: Add tests for MPEG layer-3 decoder source connection.
227 quartz/tests: Add tests for MPEG layer-3 decoder sample processing.
228 quartz/tests: Add tests for MPEG layer-3 decoder sample timestamps.
229 quartz/tests: Add tests for MPEG layer-3 decoder streaming events.
230 quartz/tests: Add tests for MPEG layer-3 decoder quality control.
231 winegstreamer: Register MPEG layer-3 decoder.
234 po: Update Lithuanian translation.
236 Bartosz Kosiorek (6):
237 gdiplus: Add support for Custom Line Indent.
238 gdiplus: Fix position of Custom Cap when Scale is different that 1.
239 gdiplus: Add support for LineCapArrowAnchor.
240 gdiplus: Improve performance of GdipScaleMatrix.
241 gdiplus: Improve performance of matrix multiplication by unrolling loop.
242 gdiplus: Improve performance of GdipTranslateMatrix.
245 mfmediaengine: Pass volume changes to media session.
248 include: Add __WINE_(DEALLOC|MALLOC) attributes to wine_get_(dos|unix)_file_name.
249 mountmgr.sys: Free wine_get_dos_file_name memory with HeapFree.
250 wpcap: Free wine_get_unix_file_name memory with HeapFree.
251 loader: Add comments to 'start' in macOS preloader.
252 loader: In macOS preloader, fix up argc/argv in C rather than asm.
253 loader: In macOS preloader, manually set 'environ' to work around a bug in macOS 12 and later.
254 configure: Always enable Mac driver on macOS.
255 configure: Remove ApplicationServices.framework check (always present on macOS).
256 configure: Remove Carbon.framework check (always present on macOS).
257 configure: Remove CoreAudio.h check (always present on macOS).
258 configure: Remove DiskArbitration.framework check (always present on macOS).
259 configure: Remove check for the HID Manager (always present on macOS).
260 configure: Remove check for IOKit (always present on macOS).
261 configure: Remove Metal.framework check (present in all supported macOS SDKs).
262 configure: Remove Security.framework check (always present on macOS).
263 configure: Remove SystemConfiguration header check (always present on macOS).
264 winemac: Remove pre-Mac OS X 10.7 workaround.
265 loader: In macOS preloader, set NXArgc, NXArgv, and environ on i386 and x86_64.
268 uiautomationcore: Add UiaRemoveEvent stub.
269 uiautomationcore: Add UiaEventAddWindow stub.
270 uiautomationcore: Add UiaEventRemoveWindow stub.
271 uiautomationcore: Add UiaAddEvent stub.
274 xmllite/writer: Implement WriteChars.
275 xmllite/writer: Implement WriteRawChars.
276 xmllite/writer: Implement WriteSurrogateCharEntity.
279 wined3d: Set flag types to uint32_t (external definitions).
280 wined3d: Set flag types to uint32_t (internal definitions).
281 wined3d: Set location types to uint32_t.
282 winedump: Don't crash when dumping .dbg files.
283 configure: Log pkg-config error messages.
284 wined3d: Store version information as unsigned int.
285 wined3d: Change wined3d_resource.usage field to uint32_t.
286 wined3d: Set resource's priority field's type as unsigned int.
287 wined3d: Convert fbo_entry.rt_mask to uint32_t type.
288 wined3d: Let control_values' type be unsigned int.
289 wineconsole: Set launched process name as created console title.
290 wined3d: Transfer long types' enabling at file level.
291 wined3d: Store GetLastError() into an unsigned int.
292 wined3d: Enable long types in adapter_vk.c.
293 wined3d: Enable long types in ati_fragment_shader.c.
294 wined3d: Reduce long integral type usage in wined3d_main.c.
295 wined3d: Enable long types in wined3d_main.c.
296 wined3d: Reduce usage of long integral types in vertexdeclaration.c.
297 wined3d: Enable long types in vertexdeclaration.c.
298 wined3d: Reduce usage of long integral types in palette.c.
299 wined3d: Enable long types in palette.c.
300 wined3d: Enable long types in directx.c.
301 wined3d: Enable long types in context_gl.c.
302 wined3d: Reduce usage of long integral types in buffer.c.
303 wined3d: Enable long types in buffer.c.
304 wined3d: Reduce usage of long integral types in swapchain.c.
305 wined3d: Enable long types in swapchain.c.
306 wined3d: Enable long integral types in cs.c.
307 wined3d: Reduce usage of long integral types in adapter_gl.c.
308 wined3d: Enable long types in adapter_gl.c.
309 wined3d: Reduce usage of long integral types in glsl_shader.c.
310 wined3d: Enable long types in glsl_shader.c.
311 wined3d: Reduce usage of long integral types in include/wined3d.h.
312 wined3d: Reduce usage of long integral types in device.c.
313 wined3d: Enable long types in device.c.
314 wined3d: Reduce usage of long integral types in surface.c.
315 wined3d: Enable long types in surface.c.
316 msvcr90: Fix warning on object access tests.
317 wined3d: Reduce usage of long integral types in utils.c.
318 wined3d: Enable long types in utils.c.
319 wined3d: Reduce usage of long integral types in shader.c.
320 wined3d: Enable long types in shader.c.
321 wined3d: Reduce usage of long integral types in nvidia_texture_shader.c.
322 wined3d: Enable long types in nvidia_texture_shader.c.
323 wined3d: Get/set texture's level_count and lod as unsigned int.
324 wined3d: Change stencil parameter type in blitter_clear() method.
325 wined3d: Reduce usage of long integral types in texture.c.
326 wined3d: Enable long types in texture.c.
327 d3dx9_36/tests: Enable compilation with long types.
328 winedbg: Avoid passing a non allocated buffer to HeapFree.
329 wined3d: Reduce usage of long integral types in shader_sm1.c.
330 wined3d: Enable long types in shader_sm1.c.
331 wined3d: Reduce usage of long integral types in shader_sm4.c.
332 wined3d: Enable long integral types in shader_sm4.c.
333 wined3d: Let sampler_states and texture_states be 2D arrays of uint32_t.
334 wined3d: Reduce usage of long integral types in stateblock.c.
335 wined3d: Enable long integral types in stateblock.c.
336 wined3d: Reduce usage of long integral types in state.c.
337 wined3d: Enable long integral types in state.c.
338 wined3d: Reduce usage of long integral types in view.c.
339 wined3d: Enable long integral types in view.c.
340 wined3d: Reduce usage of long integral types in arb_program_shader.c.
341 wined3d: Use proper enum type in arb_program_shader.c.
342 wined3d: Enable long types in arb_program_shader.c.
344 Etaash Mathamsetty (1):
345 ntoskrnl.exe: Use KeQueryMaximumProcessorCountEx for KeQueryMaximumProcessorCount.
348 winebus.sys: Report unique serial numbers for SDL devices.
351 po: Update Dutch translation for joy.cpl.
354 kernel32/tests: Avoid failures when processes start during the process test.
356 Gabriel Ivăncescu (24):
357 mshtml: Implement print events.
358 mshtml: Implement location.reload().
359 mshtml: Implement `onload` prop for input elements.
360 mshtml: Set `reload` load type to Gecko for document reloads.
361 mshtml: Implement performance.navigation.redirectCount.
362 mshtml: Implement performance.navigation.type.
363 mshtml: Treat edit mode as a reload.
364 mshtml: Return proper error for invalid selectors in IE8 mode.
365 mshtml: Don't check for doc_node from the doc obj when it can't be NULL.
366 include/mshtml: Add IHTMLXDomainRequest and factory interfaces and classes.
367 mshtml: Keep a ref to the window during the doc nsevent handlers.
368 mshtml: Send load event synchronously for img elements that loaded instantly in legacy modes.
369 jscript: Pass correct 'this' to host objects in ES5 mode.
370 mshtml: Don't lock document mode when querying IEventTarget.
371 mshtml/tests: Allow BINDINFO_OPTIONS_ENABLE_UTF8 in bind options.
372 mshtml/tests: Expect UpdateUI, Exec_UPDATECOMMANDS and Exec_SETTITLE in edit mode.
373 include/mshtmhst: Add CGID_ScriptSite and CMDIDs for it.
374 mshtml: Rename EVENTID_INVALID to EVENTID_INVALID_ID.
375 mshtml/tests: Accept rare unknown error in ReportResult.
376 jscript: Use a jsdisp to hold refs for scopes.
377 jscript: Implement a Garbage Collector to deal with circular references.
378 jscript: Implement CollectGarbage().
379 jscript: Run the garbage collector every 30 seconds on a new object allocation.
380 jscript: Create the source function's 'prototype' prop object on demand.
383 winevulkan: Update to VK spec version 1.3.237.
386 ncrypt: Implement NCryptExportKey().
387 ncrypt: Implement NCryptSignHash().
388 wpcap: Build pcap_address structure from IP_ADAPTER_UNICAST_ADDRESS.
389 wldap32/tests: Skip paged search tests when the server can't be reached.
390 bcrypt/tests: Get rid of workarounds for old Windows versions.
391 bcrypt: Pass key size in bytes to EXPORT_SIZE and use the macro consistently.
392 bcrypt: Fix possible buffer overflow in export_gnutls_datum().
393 bcrypt: Remove unused argument from hash_finalize().
394 bcrypt: Validate key type.
395 bcrypt: Support duplicating public keys without access to the private key.
396 bcrypt: Add support for PSS padding.
397 winhttp/tests: Reduce send buffer size.
398 wtsapi32: Improve the stub for WTSQuerySessionInformation(WTSClientProtocolType).
400 wofutil: Stub WofShouldCompressBinaries().
402 Huw D. M. Davies (1):
403 ntdll: Fix -Wformat warnings on macOS.
406 wineusb.sys: Move event handling to a single thread.
407 winebus.sys: Search for added devices by devnode path in process_monitor_event().
408 wineusb.sys: Add support for TransferBufferMDL.
409 wineusb.sys: Pass interface and interface_index from the event data to the usb device data.
410 wineusb.sys: Implement DevClass compatible id for devices with multiple interfaces.
411 wineusb.sys: Add usbver, revision, busnum and portnum to PDO's instance id.
414 configure: Use -nostdlib instead of -nostartfiles in WINE_TRY_PE_CFLAGS.
415 winegcc: Use -nostdlib instead of -nostartfiles on Clang MSVC targets.
416 configure: Use -fuse-ld=lld also for compilation targets.
417 ntdll: Get TEB from signal stack pointer in init_handler.
418 ntdll: Call init_handler in usr1_handler.
419 ntdll: Detect ntdll module also by module path comparison.
420 win32u: Move NtUserGetDC implementation from user32.
421 win32u: Move NtUserGetWindowDC implementation from user32.
422 win32u: Move NtUserValidateRect implementation from user32.
423 win32u: Move NtUserPrintWindow implementation from user32.
424 user32: Merge painting.c into win.c.
425 winex11: Use NtUserGetDC.
426 winevulkan: Fix handling pointers to pointer-size variables in 32-bit thunks.
427 winevulkan: Don't try to unwrap missing optional handle struct members.
428 winevulkan: Wrap VkDeviceMemory.
429 winevulkan: Use VK_EXT_external_memory_host extension to map memory on wow64.
430 winevulkan: Get rid of direct Unix calls.
431 winevulkan: Use UNIX_CALL macro for Unix calls.
432 configure: Use -Wl,-WX for clang configure checks in MSVC mode.
433 wldap32: Define LDAP_NEEDS_PROTOTYPES.
434 opengl32: Use default calling convention for WGL driver entry points.
435 winex11: Remove no longer used declarations.
436 win32u: Move NtUserRealChildWindowFromPoint implementation from user32.
437 win32u: Move NtUserGetInternalWindowPos implementation from user32.
438 user32: Merge winpos.c into win.c.
439 winevulkan: Rename needs_host_type to needs_win32_type.
440 win32u: Move NtUserWaitMessage implementation from user32.
441 win32u: Move GetShellWindow implementation from user32.
442 win32u: Move NtUserSetShellWindowEx implementation from user32.
443 win32u: Move SetProgmanWindow implementation from user32.
444 win32u: Move GetProgmanWindow implementation from user32.
445 win32u: Move SetTaskmanWindow implementation from user32.
446 win32u: Move GetTaskmanWindow implementation from user32.
447 user32: Merge focus.c into input.c.
450 wined3d: Don't try to access unused buffers in wined3d_context_gl_load_numbered_arrays().
451 wined3d: Remove unnecessary index increment in wined3d_context_gl_cleanup_resources().
452 wined3d: Get rid of a redundant branch.
453 wined3d: Move backup window / DC handling from the swapchain to the device.
454 wined3d: Destroy primary GL context if initialization fails.
455 wined3d: Don't use separate GL contexts for different swapchains.
457 Michael Stefaniuc (4):
458 dmstyle: Simplify parsing of a style track list.
459 dmstyle: Simplify parsing of a style reference list.
460 dmstyle: Get rid of a no longer used function.
461 dmstyle: Move a struct declaration to the file it is used in.
464 msvcrt: Fix errno set on dup from read-only file.
467 wbemprox: Provide accurate SMBIOS serial number.
470 wshom: Fix WshNetwork interface definition.
471 comctl32/header: Use CRT allocation functions.
472 comctl32/monthcal: Use CRT allocation functions.
473 comctl32/static: Use CRT allocation functions.
474 comctl32/button: Use CRT allocation functions.
475 comctl32/listview: Use CRT allocation functions.
476 d3dcompiler: Implement D3DDisassemble() using vkd3d-shader.
477 vbscript: Make redim fail on fixed-size arrays.
478 d3d10/effect: Remove unused field from property description data.
479 d3d10/effect: Add min/max instructions support for expressions.
480 d3d10/effect: Add 'neg' instruction support for expressions.
481 d3d10/effect: Add 'mul' instruction support for expressions.
482 d3d10/effect: Add sin/cos instruction support for expressions.
483 d3dx9/preshader: Handle input register table.
484 d3dx9/effect: Split parameters data from effect object.
485 d3d10/effect: Partially implement updates through value expressions.
486 d3d10/effect: Add 'ftob' instruction support for expressions.
487 d3d10/effect: Add 'div' instruction support for expressions.
488 d3d10/effect: Add 'rcp' instruction support for expressions.
489 d3d10/effect: Add 'frc' instruction support for expressions.
490 comctl32: Switch back to internal allocation function.
493 user32: Add stub for GetPointerInfo().
494 winegstreamer: Query stream tags and set MF_SD_LANGUAGE attribute.
495 winegstreamer: Extract stream name from QT demuxer private data.
496 mfplay/tests: Add MF_SD_LANGUAGE and MF_SD_STREAM_NAME value tests.
497 ddraw: Sync draw textures even for hardware device.
498 windows.devices.enumeration/tests: Fix reference count test in device_watcher_handler_Invoke().
499 windows.devices.enumeration/tests: Make test handlers structure static.
500 winhttp: Do not open connection in handle_redirect().
501 winhttp: Don't refill buffer after receiving server response.
502 winhttp: Send notifications from receive_response() directly.
503 winhttp: Receive server reply in send_request().
504 winhttp: Factor out queue_receive_response().
505 winhttp: Call receive_response() recursively instead of looping.
506 winhttp: Wait for WINHTTP_CALLBACK_STATUS_SENDREQUEST_COMPLETE in request_send().
507 winhttp: Execute receive_response() synchronously when possible.
508 winhttp/tests: Test WinHttpReceiveResponse() synchronous behaviour.
509 winhttp/tests: Test calling WinHttpReceiveResponse() recursively from various send callbacks.
512 localspl: Add FILE: port monitor implementation.
513 localspl: Add FILE: port tests.
514 localspl: Convert MONITOREX structure to MONITOR2 during port monitor initialization.
515 localspl: Introduce printer_info_t structure.
516 localspl: Add AddJob implementation.
517 localspl: Add StartDocPrinter implementation.
518 localspl: Add SetJob implementation.
519 localspl: Add GetJob implementation.
520 localspl: Add partial ScheduleJob implementation.
521 localspl: Add EndDocPrinter implementation.
522 gdi32: NULL terminate output string in CreateDCW.
523 winspool: Don't translate port name to path in StartDocDlgW.
524 localspl: Add printer port redirection extension.
525 localspl: Fix parameters validation in FILE StartDocPort.
526 localspl: Add pipe port extension.
527 localspl: Add unixname port extension.
528 localspl: Add lpr port extension.
529 localspl: Add cups port extension.
530 localspl: Return error if cups port handle is used from different threads.
531 localspl: Fix error handling in ScheduleJob.
532 winspool: Use providor for print jobs implementation.
533 winspool: Use providor for WritePrinter implementation.
534 localspl: Fix error handling in printer_alloc_handle helper.
535 localspl: Preparation for using handle type specific structures.
536 localspl: Use separate structure to store XcvPort and XcvMonitor handles.
537 localspl: Use separate structure to store printserver handles.
538 localspl: Rename job_t structure to job_info_t.
539 localspl: Add support for Job handles.
540 localspl: Add ReadPrinter implementation.
541 winspool: Call providor in ReadPrinter implementation.
542 winprint: Fix parameters validation in EnumPrintProcessorDatatypesW.
543 winprint: Fix datatype validation in PrintDocumentOnPrintProcessor.
544 wineps: Add print processor stub.
545 localspl: Add support for Port handles.
546 localspl: Support Port handles in WritePrinter.
547 localspl: Partially support Port handles in StartDocPrinter.
548 localspl: Support Port handles in EndDocPrinter.
549 winspool: Implement print processor validation in AddPrinter.
550 localspl: Add AddPrintProcessor implementation.
551 winprint: Register winprint print processor.
552 localspl: Load printer datatype and print processor information on init.
553 localspl: Use helper for loading string from registry in monitor_load.
554 localspl: Store datatype in print job data.
555 localspl: Store default datatype in printer data.
556 localspl: Use print processor in ScheduleJob.
557 localspl: Add partial SeekPrinter implementation.
558 winspool: Add SeekPrinter implementation.
559 wineps: Add EnumPrintProcessorDatatypesW implementation.
560 wineps: Add OpenPrintProcessor implementation.
561 wine.inf: Also install wineps.drv to print processor directory.
562 wineps: Register print processor.
563 wineps: Improve PrintDocumentOnPrintProcessor stub.
564 wineps: Skip EMRI_METAFILE_DATA record silently.
565 wineps: Support parsing EMRI_METAFILE_EXT records.
566 msvcrt: Construct a real C++ object to test against.
567 msvcp70: Update spec file.
570 vbscript: Accept private and public const global declarations.
571 wshom.ocx: Added WshNetwork class factory implementation.
572 wshom.ocx: Add IWshNetwork2 interface stub implementation.
573 wshom.ocx: Add WShNetwork object creation test.
574 vbscript: Handle "case" statements without separators.
575 wshom.ocx: Downgrade FIXME to WARN for unsupported interfaces.
576 wshom.ocx: Implement WshNetwork2_GetIDsOfNames.
577 wshom.ocx: Implement WshNetwork2_Invoke.
578 wshom.ocx: Implement IWshNetwork2_get_UserName().
581 maintainers: Take ownership of joy.cpl.
582 joy.cpl: Move constants and structures to main.c.
583 joy.cpl: Move ff_effects_callback function around.
584 joy.cpl: Use designated initializer to init effect params.
585 joy.cpl: Read the effect parameters instead of storing them.
586 joy.cpl: Read the effect DIEFFECTINFOW instead of storing it.
587 joy.cpl: Use a struct list to keep created device effects.
588 joy.cpl: Read the device instance name instead of storing it.
589 joy.cpl: Read the number of buttons instead of storing it.
590 joy.cpl: Read the device path property instead of storing it.
591 joy.cpl: Remove unnecessary joystick forcefeedback member.
592 joy.cpl: Avoid race condition when accessing selected effect.
593 ntdll: Keep the region base offset in the block header.
594 ntdll: Find heap block region from its base offset.
595 ntdll: Avoid clearing BLOCK_FLAG_USER_INFO in heap_reallocate.
596 ntdll: Stop locking heap to access block-local data.
597 ntdll: Inverse the control flow in heap_reallocate.
598 ntdll: Reallocate a new block if we failed to commit.
599 joy.cpl: Move the device effect list to static global scope.
600 joy.cpl: Use a struct list to keep created dinput devices.
601 joy.cpl: Always start input threads and remove num_ff member.
602 joy.cpl: Use a notification event rather than polling state.
603 joy.cpl: Reduce the button size on the device test tab.
604 joy.cpl: Merge the dinput test and force feedback tabs.
605 joy.cpl: Add DI_ prefix to dinput dialog constants.
606 joy.cpl: Use designated initializers in display_cpl_sheets.
607 joy.cpl: Build without NONAMELESSUNION.
608 joy.cpl: Add a new xinput controller test tab.
609 joy.cpl: Draw xinput controller state with gdi32.
610 joy.cpl: Add a checkbox to test xinput rumble.
611 joy.cpl: Draw dinput button state with gdi32.
612 joy.cpl: Draw dinput axes state with gdi32.
613 joy.cpl: Move dinput test tab logic to dinput.c.
614 joy.cpl: Remove unnecessary JoystickData structure.
615 ntdll: Merge next free block before resizing in heap_reallocate.
616 ntdll: Move large block resize in heap_reallocate.
617 ntdll: Return the old data size from heap_reallocate.
618 ntdll: Make realloc implementation more generic.
619 ntdll: Move large block alloc out of heap_allocate.
620 ntdll: Move large block free out of heap_free.
621 ntdll: Move delayed free support out of heap_free.
622 kernel32/tests: Make sure the LFH is enabled for some sizes.
623 kernel32/tests: Add more GlobalReAlloc tests with larger size.
624 kernelbase: Restore HEAP_REALLOC_IN_PLACE_ONLY usage in LocalReAlloc.
625 wmvcore: Move async reader from winegstreamer/wm_asyncreader.c.
626 wmvcore/tests: Test that a unique read thread is involved.
627 wmvcore/tests: Fix OnStreamSample stream number checks.
628 wmvcore/tests: Test OnTime callback events synchronously.
629 wmvcore/tests: Track and check last and next output pts.
630 wmvcore/tests: Test user time granularity and delivered pts.
631 wmvcore/tests: Test changing compressed samples dynamically.
632 taskschd: Use CRT functions for remaining heap allocations.
633 inetcomm: Allocate PROPVARIANT value with CoTaskMemAlloc.
634 inetcomm: Free IMoniker_GetDisplayName value with CoTaskMemFree.
635 mountmgr.sys: Allocate UNICODE_STRING buffers with RtlAllocateHeap.
636 advapi32/tests: Only free GetSecurityInfo pointer on success.
637 kernel32/tests: Avoid releasing invalid path pointer.
638 user32: Avoid freeing invalid pointers in WIN_CreateWindowEx.
639 inetcomm: Allocate PROPVARIANT memory with CoTaskMemAlloc.
640 ntdll: Split heap region memory allocation to allocate_region helper.
641 ntdll: Move heap allocation and initialization into RtlCreateHeap.
642 ntdll: Clear BLOCK_FLAG_PREV_FREE flag out of shrink_used_block.
643 ntdll: Split heap blocks before creating or resizing used block.
644 ntdll: Merge prev and next free heap blocks in heap_free_block.
645 ntdll: Split create_free_block into block_init_free / insert_free_block.
646 ntdll: Move the insertion of the first block out of create_subheap.
647 ntdll: Keep subheap parent heap pointer and check for mismatches.
648 mshtml: Fix realloc size vs element count mixup.
649 msvcrt: Use operator_delete to free _Condition_variable queue nodes.
650 mfplat: Clear the clsid pointer in MFTEnum to avoid invalid free.
651 opengl32: Avoid calling functions that have not been queried yet.
652 uxtheme: Use bsearch and CompareStringOrdinal in MSSTYLES_LookupProperty.
655 mmdevapi/tests: Mark some more capture tests as flaky.
656 win32u: Use WMCHAR_MAP_SENDMESSAGE for NtUserSendMessage.
657 mstask: Don't assume a ONCE trigger is on the current day.
658 win32u: Pass the client instance to NtUserCreateWindowEx.
659 taskschd/tests: Fix a test failure on w1064v1507.
660 taskschd/tests: Fix test failures on newer version of Windows 10.
663 winex11.drv: Don't ignore virtual EnterNotify events.
666 msvcr100: Implement _StructuredTaskCollection::_RunAndWait.
667 msvcr100: Move exception_ptr functions to a separate file.
668 msvcr100: Factor out EXCEPTION_RECORD to exception_ptr conversion.
669 msvcr100: Implement exception passing from chore threads to _RunAndWait.
670 msvcr110: Implement _StructuredTaskCollection constructor.
671 msvcr100: Implement missing_wait exception.
672 msvcr120: Throw exception in ~_StructuredTaskCollection if _RunAndWait was not called.
674 Zebediah Figura (20):
675 wined3d: Use unsigned int for "refcount" variables.
676 wineusb.sys: Do not close the device handle more than once.
677 winspool: Define copy_file() only if CUPS is available.
678 wined3d: Trace the sampler desc in wined3d_sampler_init().
679 wined3d: Trace the created command stream in wined3d_cs_create().
680 wined3d: Make a couple of variables const.
681 d3d9/tests: Do not test the alpha channel in test_multisample_get_front_buffer_data().
682 ntdll: Trace the name of critical sections which are released while not acquired.
683 qasf/asfreader: Do not store the media type passed to IFileSourceFilter::Load().
684 qasf/tests: Expand the IFileSourceFilter tests.
685 wined3d: Allow exposing lower d3d feature levels from the Vulkan adapter.
686 wined3d: Allow creating a feature level 9.3 device even if custom vertex attribute divisors are not supported.
687 wined3d: Require independent blending to create a feature level 9.3 device.
688 wined3d: Implement multiple viewports for the Vulkan adapter.
689 wined3d: Require geometry shaders to create a feature level 10.0 device.
690 wined3d: Require tessellation shaders to create a feature level 11.0 device.
691 wined3d: Require texture cube array support to create a feature level 10.1 device.
692 wined3d: Require multiple indirect draw support to create a feature level 11.0 device.
693 wined3d: Require indirect draw first instance support to create a feature level 11.0 device.
694 wined3d: Require depth clip control to create a feature level 10.0 device.
697 winex11.drv: Support _KDE_NET_WM_STATE_SKIP_SWITCHER.
698 winex11.drv: Release window data before calling sync_window_cursor().
699 Revert "ntdll: Call usleep() instead of NtYieldExecution() in NtDelayExecution().".
702 wmvcore/tests: Test subtype and formattype for IWMMediaProps.
703 mf/tests: Test IMediaObject_SetInputType for WMV decoder.
704 winegstreamer: Add WMV support to wg_format.
705 winegstreamer: Implement media_object_SetInputType for WMV decoder.