d3d9: Hold the lock in query methods.
[wine] / ANNOUNCE
1 This is release 0.9.39 of Wine, a free implementation of Windows on Unix.
2
3 What's new in this release:
4   - Many MSHTML improvements.
5   - Several improvements to the sound support.
6   - A number of Winsock fixes.
7   - Several new supported constructs in the IDL compiler.
8   - Many Direct3D threading fixes.
9   - Lots of bug fixes.
10
11 Because of lags created by using mirrors, this message may reach you
12 before the release is available at the public sites. The sources will
13 be available from the following locations:
14
15   http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.39.tar.bz2
16   http://prdownloads.sourceforge.net/wine/wine-0.9.39.tar.bz2
17
18 Binary packages for various distributions will be available from:
19
20   http://www.winehq.org/site/download
21
22 You will find documentation on
23
24   http://www.winehq.org/site/documentation
25
26 You can also get the current source directly from the git or CVS
27 repositories. Check respectively http://www.winehq.org/site/git or
28 http://www.winehq.org/site/cvs for details.
29
30 If you fix something, please submit a patch; instructions on how to do
31 this can be found at http://www.winehq.org/site/sending_patches
32
33 Wine is available thanks to the work of many people. See the file
34 AUTHORS in the distribution for the complete list.
35
36 ----------------------------------------------------------------
37
38 Changes since 0.9.38:
39
40 Alex Villacís Lasso (6):
41       oleaut32: Support for VT_DISPATCH in VarAbs.
42       oleaut32: Support for VT_DISPATCH in VarNot.
43       oleaut32: Support for VT_DISPATCH in VarFix.
44       oleaut32: Support for VT_DISPATCH in VarInt.
45       oleaut32: Support for VT_DISPATCH in VarNeg.
46       oleaut32: Support for VT_DISPATCH in VarRound.
47
48 Alexander Nicolaysen Sørnes (12):
49       wordpad: Split code into set_caption function.
50       wordpad: Store file name globally.
51       wordpad: Add file saving support.
52       wordpad: Improve file reading code.
53       wordpad: Convert open file dialog to Unicode.
54       wordpad: Add file saving dialog.
55       wordpad: Add missing dots to Open menu item.
56       wordpad: Fix potential buffer overflow.
57       wordpad: Allow toggling of toolbar.
58       wordpad: Allow toggling of statusbar.
59       wordpad: Split toolbar into tool- and formatbar.
60       wordpad: Use Unicode functions in more places.
61
62 Alexandre Julliard (39):
63       ws2_32: Reimplement WSASendTo along the lines of NtWriteFile.
64       ws2_32: Call the I/O completion routine as a user APC.
65       ws2_32: Simplify the async shutdown handling, and remove a bunch of no longer used code.
66       ntdll: Queue an intermediate user APC routine to free the async info.
67       server: Remove the extra apc_arg parameter now that user APCs all require the same arg as the kernel APC.
68       ws2_32: Queue a proper user APC also on immediate success in WSARecvFrom/WSASendTo.
69       server: Run async I/O APCs from the SIGUSR1 handler.
70       ntdll: Get rid of the num_async_io counter in the TEB.
71       kernel32: Rewrite GetOverlappedResult for the new async I/O behavior.
72       ws2_32: Rewrite WSAGetOverlappedResult for the new async I/O behavior.
73       advapi32: Convert the service list to a standard list.
74       server: Add support for system processes, that can be signaled to exit when all non-system processes are done.
75       explorer.exe: Mark explorer as a system process.
76       advapi32: Mark service processes as system processes, and exit when all user processes are done.
77       winedevice: Accept the shutdown service control.
78       widl: Get rid of the SIGSEGV handler, this only makes things harder to debug.
79       winmm: Fix computation of sleep time until next timeout.
80       winmm: Get rid of the WINE_MM_IDATA global structure, there's only one instance anyway.
81       cmd.exe: Silence a FIXME.
82       msvcrt: Set the correct ebp value before calling the local unwind handler.
83       include: Add DO_NO_IMPORTS ifdefs where needed.
84       libwine: Set install name to an absolute path for the installed library on Mac OS.
85       configure: Replace some obsolete macros to avoid warnings.
86       tools: Upgrade the config.guess/config.sub scripts.
87       msxml: Don't use VariantClear on an uninitialized variant.
88       winmm: Convert the timer list to a standard Wine list.
89       winmm: Maintain the timer list sorted by expiration time.
90       winmm: Initialize the timer critical section statically.
91       shell32: Fix contents of string returned in load_path.
92       shell32: Remove a redundant include.
93       winecfg: Fix potential null pointer access (spotted by Yaroslav Skorokhodov).
94       winex11.drv: Glyph width is rounded to 32 bits, make sure to provide enough null data.
95       comctl32: Remove useless pointer check.
96       wintrust/tests: Fix the WintrustGetRegPolicyFlags to work right the first time.
97       widl: Add typecasts for user marshalling routines to avoid compiler warnings.
98       localspl: Make some functions static.
99       server: Enable kqueue support on Mac OS >= 10.5 now that it's fixed.
100       ntdll: Implemented reading of the CDROM TOC on Mac OS.
101       user32/tests: Avoid strlen in trace.
102
103 Anatoly Lyutin (2):
104       cmd.exe: Update Russian translation.
105       user32: tests:msg Add test for switching MDI children.
106
107 Andrew Talbot (7):
108       msi: Constify some variables.
109       oleaut32: Fix some typos.
110       wined3d: Void functions should not return a value.
111       msi: Constify a variable.
112       msi: Constify some variables.
113       msi: Constify some variables.
114       msrle32: Constify some variables.
115
116 Andrey Turkin (4):
117       pdh: Stub implementation of pdh.dll.
118       ntdll: Stub and document IoCompletion APIs.
119       kernel32: Factor out all kernel32 timeout-conversion snippets to one helper functions.
120       kernel32: Implement IO completion functions on top of the NT IoCompletion API.
121
122 Aric Stewart (1):
123       ole32: Implementation of state bits for IStorage.
124
125 Chris Robinson (3):
126       wined3d: Add a few missing checkGLcall calls.
127       quartz: Don't return S_FALSE for failed connections.
128       wined3d: Add missing table entry value.
129
130 Christian Costa (3):
131       wineoss.drv: Mark every buffer being added.
132       winealsa.drv: Use correct tests for synthesizer/port enumeration order.
133       winealsa.drv: Fix compilation with old alsa headers.
134
135 Damjan Jovanovic (1):
136       ws2_32: getsockname should fail on unbound socket.
137
138 Dan Hipschman (14):
139       list.h: Add macros for reverse iteration.
140       widl: Replace get_name with a field reference.
141       widl: Represent arrays with type_t.
142       widl: Implement conformant structure handling.
143       widl: Check for NULL in set_tfswrite.
144       widl: Fix incomplete struct/union typedef bug.
145       widl: Simplify correlation descriptor code.
146       widl: Handle wire_marshal types.
147       widl: Test structure argument marshalling.
148       widl: Handle wire_marshal pointer attributes.
149       widl: Handle embedded interface pointers.
150       widl: Handle encapsulated unions.
151       widl: Factor the output functions.
152       widl: Fix a write_parameters_init bug.
153
154 Detlef Riekenberg (4):
155       include/winspool: Add more flags for printer drivers.
156       winspool: Implement AddPortEx.
157       winspool: Remove outdated comment.
158       localspl: Implement AddPortEx.
159
160 Dmitry Timoshkov (4):
161       include/msvcrt: Make sure that __int64 is properly defined on a 64-bit platform.
162       user32: Do not hardcode cp1252 for an icon/title font.
163       gdi32: Make BITMAPINFOHEADER biSize check match what other parts of code do.
164       msi: Simplify the code.
165
166 Evan Stade (9):
167       gdiplus: Added public headers.
168       gdiplus: Added beginnings of memory and startup functions.
169       gdiplus: First pen implementation.
170       gdiplus: First pen test.
171       gdiplus: Added first GDI+ graphics implementation.
172       gdiplus: Implemented GdipDrawLineI.
173       gdiplus: Implemented GdipDrawRectangleI.
174       gdiplus: Brush implementation.
175       gdiplus: Brush tests.
176
177 Francois Gouget (28):
178       ws2_32: Improve the prototypes Win64 compatibility by replacing long with LONG.
179       winspool.drv: Fix the AddPortExA/W() export to match the implementation.
180       programs/cmd: Add missing '\n' to Wine trace.
181       wined3d: Fix spelling of the state_separateblend() function.
182       Assorted spelling fixes.
183       ntdll: Improve the prototypes Win64 compatibility by replacing long with LONG.
184       winapi_check: Also warn about 'unsigned long's Win64 compatibility problems.
185       advapi32: Update win32.api to fix the winapi_check warnings.
186       wined3d: Pass the D3DCB_CreateAdditionalSwapChain() error code to the upper layers (needed for d3d9).
187       gdiplus: Add missing '\n' in Wine trace.
188       winapi_check: .exe and .ocx files can also export APIs.
189       hhctrl.ocx: winapi_check expects the module name to be all uppercase in the documentation.
190       msdmo: dmoreg.h should include mediaobj.h.
191       msdmo: Improve the prototypes Win64 compatibility by replacing long with LONG.
192       secur32: Update win32.api to fix the winapi_check warnings.
193       Add API documentation stubs to make winapi_check happy.
194       wintrust/tests: Simplify the code and improve consistency by removing unneeded function typedefs.
195       wintrust/tests: Fix checks to be more informative when they fail.
196       gdiplus: Add missing '\n' to ok() calls, Wine traces.
197       regedit: Move PerformRegAction() and get_file_name() around to eliminate forward references. Make them static.
198       crypt32: Add missing '\n' to ok() call.
199       regedit: Remove setAppName() as the application name is hardcoded anyway.
200       regedit: Remove cruft and make functions static, reordering where necessary to avoid forward declarations.
201       regedit: If the data for a given value is in an unknown format, then print an error and don't modify the value.
202       regedit: Make the dword and binary data parsing both more flexible and stricter.
203       regedit: The registry functions return standard error codes, not HRESULTs.
204       regedit: Having garbage after the dash in '"foo"=-' is not valid.
205       regedit: Modify getRegClass() to avoid dubious comparisons and casts between HKEYs and error codes.
206
207 Glenn Wurster (1):
208       sfc_os: Add stub implementation for SfcIsKeyProtected.
209
210 H. Verbeet (15):
211       wined3d: Return WINED3DERR_INVALIDCALL in DrawIndexedPrimitive if no index buffer is set.
212       d3d9: Add a test for calling DrawIndexedPrimitive with a NULL index buffer.
213       wined3d: TRACE the Color parameter in IWineD3DDeviceImpl_Clear.
214       wined3d: Rename IWineD3DDeviceImpl_SetBasevertexIndex to IWineD3DDeviceImpl_SetBaseVertexIndex.
215       wined3d: Make sure the color buffer is not modified by depth_blt().
216       wined3d: Get rid of the BaseVertexIndex parameter to IWineD3DDeviceImpl_SetIndices, use SetBaseVertexIndex instead.
217       wined3d: Add IWineD3DDevice_GetBaseVertexIndex to retrieve the base vertex index.
218       wined3d: Get rid of the pBaseVertexIndex parameter to IWineD3DDeviceImpl_GetIndices, use GetBaseVertexIndex instead.
219       wined3d: Turn off filtering for FBO attachments, update the texture's states array.
220       wined3d: Fix GLSL definitions.
221       wined3d: Pass NULL for the stateBlock parameter to shader_get_registers_used() in IWineD3DVertexShaderImpl_SetFunction.
222       wined3d: For ps_2_0 and higher, call shader_get_registers_used() in IWineD3DPixelShaderImpl_SetFunction.
223       wined3d: Take the texUnitMap into account when loading shader_glsl_load_psamplers().
224       wined3d: Call IWineD3DDeviceImpl_FindTexUnitMap() when activating the context.
225       wined3d: Add wined3d vertex sampler definitions.
226
227 Hans Leidekker (3):
228       mlang: Implement IMultiLanguage::GetLcidFromRfc1766.
229       wininet: More lenient parsing of the passive mode server response.
230       gdi32: Add some tests for BITMAPINFOHEADER biSize checks.
231
232 Huw Davies (4):
233       mshtml: Don't release the factory if we failed to get it.
234       oleaut32: Fixes for the PICTYPE_UNINITIALIZED case.
235       riched20: Don't mess with the caret if we don't have focus.
236       winex11.drv: XRenderCompositeText has a problem with 0x0 glyphs, so we'll pretend they're 1x1.
237
238 Hwang YunSong(황윤성) (2):
239       credui: New Korean resource.
240       shell32: Updated Korean resource.
241
242 Jacek Caban (58):
243       urlmon: Don't pass query part of URL to CreateUrlCacheEntryW.
244       mshtml: Added support for coexisting different Gecko versions installation.
245       mshtml: Switch to Wine Gecko 0.1.0.
246       mshtml: Fix debug trace.
247       mshtml: Added command table for CGID_MSHTML commands.
248       mshtml: Move IDM_FONTSIZE, IDM_FONTNAME and IDM_FORECOLOR to edit state command table.
249       mshtml: Move more commands to command table.
250       mshtml: Move more commands to editor command table.
251       mshtml: Move remaining commands to tables.
252       mshtml: Use command table for IDM_COPY, IDM_CUT and IDM_PASTE query.
253       mshtml: Move justify queries to command table.
254       mshtml: Move edit command queries to the command table.
255       mshtml: Move remaining status queries to command tables.
256       mshtml: Make [get|set]_font_size static.
257       mshtml: Move setup_ns_editing to nsembed.c.
258       mshtml: Forward all IsDirty implementations to one function.
259       mshtml: Don't crash in load_stream if Gecko is not available.
260       mshtml: Don't do anything in exec_editmode if edit mode is already set.
261       mshtml: Use IOleCommandTarget::Exec to implement context menu.
262       mshtml: Call UpdateUI and Exec(OLECMDID_UPDATECOMMANDS) from timer callback.
263       mshtml: Move Exec(OLECMDID_SETTITLE) call to separated function and use it in on_timer.
264       mshtml: Call update_doc in exec_editmode.
265       mshtml: Added test of callbacks called from document timer.
266       mshtml: Pump messages of all windows in test_download.
267       mshtml: Improve IDM_JUSTIFYLEFT query status.
268       mshtml: Push TASK_PARSECOMPLETE in load event if Gecko is available.
269       mshtml: Set FALSE useCapture for editor's keypress event listener.
270       mshtml: Don't check out variant type in exec_fontname.
271       mshtml: Set default fontname to 'Times New Roman'.
272       mshtml: Added Exec(IDM_FONTNAME) tests.
273       mshtml: Added more command tests.
274       mshtml: Call update_doc in editor commands.
275       mshtml: Call update_doc in init_editor.
276       mshtml: Store editor controller in NSContainer.
277       mshtml: Added editor mode up key implementation.
278       mshtml: Added editor mode down key implementation.
279       mshtml: Reimplement editor mode right key using command controller.
280       mshtml: Reimplement editor mode left key using command controller.
281       mshtml: Set default scrollbar preferences.
282       mshtml: Added IDM_RESPECTVISIBILITY_INDESIGN command stub implementation.
283       mshtml: Silence invalid FIXME for ELEMENT_DOCUMENT_FRAGMENT_NODE in nsnode_to_nsstring_rec.
284       mshtml: Added COMMENT_NODE implementation in nsnode_to_nsstring_rec.
285       mshtml: Added IHTMLStyle::get_fontFamily implementation.
286       mshtml: Added IDM_COMPOSESETTINGS implementation.
287       mshtml: Added semi stub IsDirty implementation.
288       mshtml: Added IsDirty tests.
289       mshtml: Added edit mode IDM_COPY implementation.
290       mshtml: Added edit mode IDM_PASTE implementation.
291       mshtml: Added edit mode IDM_CUT implementation.
292       mshtml: Call Exec(CGID_ShellDocView, 37) in exec_editmode.
293       mshtml: Move createing URL moniker to separated function.
294       mshtml: Move Exec(CGID_ShellDocView, 37) call to match native.
295       mshtml: Store current moniker in HTMLDocument.
296       mshtml: Added GetCurMoniker implementation.
297       mshtml: Don't crash in set_font_size if range_cnt is 0.
298       mshtml: Added get_URL implementation.
299       mshtml: Use IOleInPlaceSiteEx if available.
300       mshtml: Added IOleInPlaceSiteEx tests.
301
302 James Hawkins (8):
303       msi: Use fetch_int to reduce code duplication and access to table data.
304       msi: Reduce the amount of code that directly accesses table data.
305       msi: Represent table data as bytes instead of shorts.
306       msi: Add support for large string tables.
307       msi: Set the MsiNetAssemblySupport property.
308       msi: Protect custom actions with a structured exception handler.
309       msi: Fixed the WriteEnvironmentStrings action.
310       msi: Set the UserSID and ProductCode properties for deferred custom actions.
311
312 Jason Edmeades (10):
313       cmd.exe: Move English constants into NLS files.
314       cmd.exe: Move writing to console into a single function.
315       cmd.exe: Handle command line as Unicode.
316       cmd.exe: Convert cmd to Unicode.
317       cmd.exe: Fix 'help garbage' command post-unicode support.
318       cmd.exe: Fix handling of malformed environment variable expansion.
319       cmd.exe: Change from main to wmain.
320       cmd.exe: Fix dir /w.
321       xcopy.exe: Convert from main to wmain.
322       cmd.exe: Add support for cmd.exe /u (Unicode from internal pgms).
323
324 Jeff Latimer (2):
325       shell32: Fix possible dereference of NULL ptr.
326       msi: Use the langbuff len rather than the versionbuff len when allocating the langbuff.
327
328 John Klehm (1):
329       include: Allow port.h to build on gcc4.
330
331 Juan Lang (10):
332       comdlg32: Initialize file dialog controls before creating dialog.
333       comdlg32: Check file dialog's FOIShellView before accessing it.
334       crypt32: Add CryptMsg* stubs.
335       crypt32: Implement CERT_AUTHORITY_KEY_ID2_INFO encoding/decoding.
336       crypt32: Implement PKCS_CONTENT_INFO encoding/decoding.
337       crypt32: Separate set encoding into a separate function.
338       crypt32: Implement PKCS_ATTRIBUTE encoding/decoding.
339       crypt32: Use CRYPT_EncodeEnsureSpace to allocate memory when necessary.
340       crypt32: Implement PKCS_ATTRIBUTES encoding/decoding.
341       crypt32: Implement PKCS7_SIGNER_INFO encoding/decoding.
342
343 Kai Blin (1):
344       ws2_32: Add mapping for STATUS_OBJECT_TYPE_MISMATCH to WSAENOTSOCK.
345
346 Kolbjørn Fredheim (1):
347       winex11.drv: Echo the video mode requested in the error message when not finding a matching mode.
348
349 Lei Zhang (7):
350       wined3d: Various spelling fixes.
351       include: Add missing definitions to shlobj.h.
352       shell32: Start implementing BIF_USENEWUI.
353       user32: Improve cut/copy/paste behavior of password edit boxes.
354       comdlg32: Move file dialog resizing code into its own function.
355       user32: Remove a unused variable from ES_PASSWORD test.
356       comctl32: Make modal property sheets modal.
357
358 Louis Lenders (1):
359       shell32: Add stub for SHUpdateRecycleBinIcon.
360
361 Maarten Lankhorst (8):
362       dsound: Fix buffer caps.
363       dsound: Recalculate 3d buffer on SetVolume.
364       dsound: Disable property sets if hardware doesn't support it.
365       winmm: Use unix fd's instead of win32 events to sync internal events in timer.
366       dsound: Unset variable on failure in IKsBufferPropertySetImpl_Create.
367       rsaenh: Allow CRYPT_NEWKEYSET and CRYPT_VERIFYCONTEXT at same time when acquiring context.
368       winealsa: Detach directsound implementation from waveout implementation.
369       dsound: Use TIME_KILL_SYNCHRONOUS on sound timer.
370
371 Marcus Meissner (1):
372       quartz: Added some error checking on failure to CreateClassEnumerator.
373
374 Markus Goemmel (1):
375       comctl32/listview.c: Ownerdraw font problem during focus change fixed.
376
377 Michael Stefaniuc (8):
378       wingdi.h: Multi-character character constants are implementation specific according to the C standard. Use a hex number instead.
379       capi2032: Fix non-ANSI function declaration. Found by sparse.
380       gphoto2.ds: Fix non-ANSI function declaration. Found by sparse.
381       wrc: Fix non-ANSI function declaration. Found by sparse.
382       winedos: Fix printf format warnings introduced by the TEB change in thread.h.
383       psapi: GetPerformanceInfo() calls down to the wrong ntdll function. Found by sparse.
384       psapi: GetWsChanges() calls down to the wrong ntdll function. Found by sparse.
385       wrc: Fix redundant checks for NULL before free(). Found by Smatch.
386
387 Mikołaj Zalewski (2):
388       kernel: Fix clearing of memory in LocalReAlloc16(..., LMEM_ZEROMEMORY).
389       comctl32: listview: Make LVM_GETCOLUMNWIDTH query the header control instead of using cached data.
390
391 Misha Koshelev (29):
392       msi: automation: Remove duplicate error messages on unknown dispid.
393       msi: automation: Add missing operand for evaluation.
394       msi: msiserver.idl: Maintain spacing as spaces, not tabs.
395       msi: automation: Remove redundant VariantClear(pVarResult).
396       msi: automation: Database::SummaryInformation is a propget, not a method.
397       msi/tests: automation: Add tests for SummaryInfo::Property, get.
398       msi: automation: Fix SummaryInfo::Property get to conform to native.
399       msi/tests: suminfo: Add tests for MsiSummaryInfoGetProperty for unknown property values.
400       msi: suminfo: Return ERROR_UNKNOWN_PROPERTY as native.
401       msi: automation: SummaryInfo::Property, remove all specific instances to PIDs.
402       msi/tests: automation: Add test for Installer::OpenDatabase.
403       msi: automation: Add MsiOpenDatabaseMode enum.
404       msi/tests: automation: Add tests for SummaryInfo::Property, put.
405       msi: automation: Implement SummaryInfo::Property, put.
406       msi/tests: automation: Add tests for SummaryInfo::PropertyCount.
407       msi: automation: Implement SummaryInfo::PropertyCount.
408       widl: Add support for vararg attribute.
409       oleaut32/tests: Add tests for IDispatch::Invoke of vararg function.
410       oleaut32: Add support for vararg functions in ITypeInfo::Invoke.
411       winebrowser: Add DDE support.
412       wine.inf: Use DDE for winebrowser as native.
413       shell32/tests: Simplify DDE thread and message loop.
414       shell32/tests: Save threadid from CreateThread as required by winme/98/95.
415       shell32/tests: Use ShellExecuteEx with SEE_MASK_FLAG_DDEWAIT and SEE_MASK_FLAG_NO_UI for DDE tests.
416       shell32/tests: Expand default DDE application name tests to conform to win98.
417       shell32/tests: Allow testing for arbitrary number of command line arguments in DDE tests.
418       shell32/tests: Add test for unquoted %1 in command and ddeexec keys.
419       setupapi/tests: Add basic tests for InstallHinfSectionA/W command line processing.
420       setupapi: Handle unquoted paths in InstallHinfSection as native.
421
422 Nigel Liang (1):
423       shell32: Conformance tests for unicode filenames and fix a bug for file deletion.
424
425 Paul Vriens (6):
426       wintrust/tests: Start of some crypt tests for wintrust.
427       wintrust/tests: Use A instead of W-calls.
428       comdlg32/tests: Skip some not implemented functions on win98.
429       crypt32/tests: Skip tests if we don't have enough rights.
430       crypt32/tests: Skip tests if we don't have enough rights.
431       crypt32/tests: Vista uses a different error code.
432
433 Phil Costin (6):
434       wined3d: Add GL_EXT_texture_sRGB constants and corresponding CheckDeviceFormat query.
435       wined3d: Extend the D3DFMT table to include gamma corrected formats.
436       wined3d: Add support for loading gamma corrected textures.
437       wined3d: Enable the loading and reloading of gamma corrected textures.
438       wined3d: Add gamma linerization support for D3DFMT_A4R4G4B4.
439       wined3d: Remove a duplication in device.c.
440
441 Ralf Beck (1):
442       winealsa.drv: Mark every sysex buffer being added.
443
444 Rob Shearman (6):
445       wininet: Send the correct callbacks during InternetReadFileExA calls.
446       wininet: Implement NTLM support for proxy authentication.
447       uuid: Add hlink CLSIDs.
448       mshtml: Add some error handling to hlink_frame_navigate.
449       mshtml: Use the implementation of IHlink in hlink.dll instead of duplicating it.
450       include: Add HTMLTextContainerEvents dispinterface and necessary dispids.
451
452 Stefan Dösinger (31):
453       wined3d: Do not enable GL_APPLE_client_storage for the dummy textures.
454       ddraw: Hold the lock in IDirect3DDevice methods.
455       ddraw: Hold the lock in IDirectDrawClipper methods.
456       ddraw: Hold the lock in IDirectDrawGammaControl methods.
457       ddraw: Hold the lock in IDirect3DMaterial methods.
458       ddraw: Hold the lock in IDirectDrawPalette methods.
459       ddraw: Hold the lock in IDirect3DLight methods.
460       ddraw: Hold the lock in IDirect3DTexture methods.
461       ddraw: Hold the lock in IDirect3DVertexBuffer methods.
462       ddraw: Hold the Lock in IDirect3DViewport methods.
463       d3d8: Add a dll global critical section.
464       d3d8: Hold the DLL lock in IDirect3D8 methods.
465       wined3d: Store the gl information in a per adapter structure and initialize it only once.
466       wined3d: Store the adapter driver and description in the adapter.
467       wined3d: Find possible fbconfis on dll load time, use them in CheckDepthStencilMatch.
468       d3d8: Hold the lock in IDirect3DDevice8 methods.
469       wined3d: Some render target->texture blit context handling.
470       wined3d: Do not set the dynlock flag on all created surfaces.
471       d3d8: Hold the lock in cubetexture methods.
472       d3d8: Hold the lock in IDirect3DIndexBuffer8 methods.
473       d3d8: Hold the lock in IDirect3DSurface8 methods.
474       d3d8: Hold the lock in swapchain methods.
475       d3d8: Hold the lock in IDirect3DVertexBuffer methods.
476       d3d8: Hold the lock in volume methods.
477       d3d8: Hold the lock in IDirect3DVolumeTexture8 methods.
478       d3d8: Hold the lock in IDirect3Dtexture8 methods.
479       wined3d: Only swap system memory resources of front and back buffer if they have the same size.
480       wined3d: Implement vertical refresh sync.
481       wined3d: Present does not clear the depth stencil.
482       wined3d: DDraw surfaces are QWORD aligned.
483       d3d9: Add a dll global critical section.
484
485 Stefan Leichter (3):
486       crypt32: Replace CRYPT_RecurseDeleteKey with RegDeleteTreeW.
487       qcap: Replace DeleteEntireSubKey with RegDeleteTreeW.
488       winspool.drv: Replace WINSPOOL_SHDeleteKeyW with RegDeleteTreeW.
489
490 Ulrich Czekalla (2):
491       ole32: Remove stack-based string buffer inFileMonikerImpl_DecomposePath.
492       opengl: Use get_glxdrawable to grab the drawable.
493
494 Vedran Rodic (1):
495       winmm: Fix PlaySound so it doesn't block when another sound is already playing.
496
497 Vitaliy Margolen (3):
498       dinput: Make sure to unacquire device before freeing it.
499       dinput: Acquire device only if specified window has focus in foreground coop level.
500       atl: Use CallWindowProc instead of calling old window proc directly.
501
502 --
503 Alexandre Julliard
504 julliard@winehq.org