dsound: Correct field access.
[wine] / ANNOUNCE
1 This is release 0.9.40 of Wine, a free implementation of Windows on Unix.
2
3 What's new in this release:
4   - Many MSHTML improvements.
5   - A few more sound fixes.
6   - Many Direct3D fixes.
7   - Lots of bug fixes.
8
9 Because of lags created by using mirrors, this message may reach you
10 before the release is available at the public sites. The sources will
11 be available from the following locations:
12
13   http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.40.tar.bz2
14   http://prdownloads.sourceforge.net/wine/wine-0.9.40.tar.bz2
15
16 Binary packages for various distributions will be available from:
17
18   http://www.winehq.org/site/download
19
20 You will find documentation on
21
22   http://www.winehq.org/site/documentation
23
24 You can also get the current source directly from the git or CVS
25 repositories. Check respectively http://www.winehq.org/site/git or
26 http://www.winehq.org/site/cvs for details.
27
28 If you fix something, please submit a patch; instructions on how to do
29 this can be found at http://www.winehq.org/site/sending_patches
30
31 Wine is available thanks to the work of many people. See the file
32 AUTHORS in the distribution for the complete list.
33
34 ----------------------------------------------------------------
35
36 Changes since 0.9.39:
37
38 Alex Villacís Lasso (6):
39       quartz: Fix video rendering sizing/positioning bugs.
40       mciwave: Prevent division by zero when processing non-PCM codec.
41       winealsa: Reduce writeahead to next multiple of psize greater than 512.
42       dsound: Make test recover from failure to preserve primary buffer length after SetFormat().
43       dsound: Reset device playpos/mixpos on buflen change.
44       winemp3: Announce capability to decode at 48 KHz.
45
46 Alexander Nicolaysen Sørnes (3):
47       wordpad: Use Unicode functions in more places.
48       wordpad: Set default font effects to 0.
49       wordpad: Remove unnecessary toolbar resizing code.
50
51 Alexandre Julliard (22):
52       kernel32: Fix VxD open code for the new NtCreateFile syntax for Unix files.
53       winedos: Fix the device open code for the new NtCreateFile syntax for Unix files.
54       winedbg: Added support for indirect call with absolute address.
55       ntdll: Improved the stub behavior of NtQuerySystemInformation(SystemModuleInformation).
56       server: Don't crash when trying to set a file lock on a device.
57       makefiles: Build programs that link against libwine twice with appropriate rpaths.
58       comctl32: Get rid of CharNextW/CharPrevW. Simplify some string functions.
59       shlwapi: Get rid of CharNextW/CharPrevW. Simplify some string functions.
60       shell32: Get rid of CharNextW.
61       advpack: Get rid of CharPrevW.
62       server: Make crash error message more explicit.
63       ntdll: Use the standard exception handling for vm86 GP faults too.
64       mapi32: Get rid of unneeded CharNextA call.
65       crypt32: Fix incorrect usage of CharNextA.
66       wineps.drv: List source files explicitly in the makefile to make it easier to parse.
67       ddraw: Don't link against X libraries.
68       crypt32: Fix an uninitialized variable compiler warning.
69       msi: Avoid some redundant checks in MsiCloseHandle.
70       wrc: Strip C code based on the name of the include file.
71       wpp: Don't suppress output from C include files, that's up to the user.
72       ntdll: Don't print traces from async I/O callbacks.
73       ws2_32: Don't print traces from async I/O callbacks.
74
75 Andrew Talbot (11):
76       msi: Name all or none of the formal arguments in function prototypes.
77       msvidc32: Constify some variables.
78       netapi32: Constify some variables.
79       d3d9/tests: Fix use of uninitialized variable (Coverity).
80       msi: Fix use of uninitialized variable (Coverity).
81       ntdll: Constify some variables.
82       ntdll: Constify some variables.
83       ntdll: Constify some variables.
84       ntdll: Constify some variables.
85       ntdll: Constify some variables.
86       ole32: Constify some variables.
87
88 Aric Stewart (1):
89       riched20: Make richedit control IME aware.
90
91 Damjan Jovanovic (1):
92       winex11.drv: Added better support for the X file drag protocol.
93
94 Dan Hipschman (13):
95       rpcrt4: Add encapsulated union tests.
96       rpcrt4: Remove inaccurate comments.
97       rpcrt4: Fix bug calculating union switch type.
98       rpcrt4: Fix typo in union buffer size calculation.
99       widl: Add tests for arrays of pointers.
100       widl: Fix warnings about unused function parameters.
101       widl: Check for interface pointers in pointer handling.
102       widl: Check for user types when calculating buffer size.
103       widl: Get simple enums working.
104       widl: Fix crash dealing with anonymous unions.
105       rpcrt4/tests: Wrap a try/except block around tests.
106       rpcrt4: Allow enums as union switch types.
107       widl: Allow enums as union switch types.
108
109 David Adam (1):
110       wordpad: French translation for the view item.
111
112 Detlef Riekenberg (10):
113       winspool/tests: Add tests for AddPortEx.
114       localspl/tests: Add tests for AddPortEx.
115       printui: Add stub for printui.dll.
116       printui: Add version resource.
117       ntprint: Add a stub for ntprint.dll.
118       ntprint: Add version resource.
119       ntprint: Implement PSetupCreateMonitorInfo.
120       ntprint/tests: Add initial test.
121       ntprint: Implement PSetupEnumMonitor.
122       ntprint/tests: Add tests for PSetupEnumMonitor.
123
124 Dmitry Timoshkov (4):
125       user32: Insert menu item only after contents of the passed in menu item info have been verified.
126       user32: When inserting a menu item make sure that MDI system buttons stay on the right side.
127       user32: Make MDI get_client_info checks more strict.
128       shell32: Make SHGetDesktopFolder use a cached instance of IShellFolder.
129
130 Emmanuel Maillard (1):
131       configure: Fix libxml2 detection on Mac OS X.
132
133 Evan Stade (10):
134       gdiplus: Implemented GdipDrawBezier.
135       gdiplus: Implemented GdipDrawPie/GdipFillPie.
136       gdiplus: Implemented GdipDrawArc.
137       gdiplus: Implemented GdipDrawCurve2.
138       gdiplus: Implemented GdipDrawLines.
139       gdiplus: Implemented GdipCreatePath and GdipDeletePath.
140       gdiplus: Fix broken graphics path constructor.
141       gdiplus: Fix erroneous pen error checking.
142       gdiplus: Tidy up graphics constructor.
143       gdi32: Added missing call to GDI_ReleaseObj.
144
145 Francois Gouget (11):
146       regedit: Add missing '\n' to an error message.
147       regedit: Don't allow square-bracketed registry paths on the command line (to match native).
148       regedit: Merge getRegClass() and getRegKeyName() to form parseKeyName().
149       winapi_check: ULONG_PTR is a 'long --pointer', not a 'long'.
150       shlwapi: Update win32.api to fix the winapi_check warnings.
151       crypt32/tests: Fix compilation on systems that don't support nameless unions.
152       advapi32: Add more RegGetValue() conformance tests, and fix Wine accordingly.
153       winapi: Add support for GDIPCONST.
154       gdi32/tests: Run the GetTextMetricsA() tests on Windows 9x too.
155       ddraw/tests: Fix compilation on systems that don't support nameless unions.
156       dsound: Add missing '\n' to Wine trace.
157
158 H. Verbeet (23):
159       wined3d: Only set GL_SHADER_OPERATION_NV to GL_NONE for mapped stages.
160       wined3d: Mask texture stage state arguments with WINED3DTA_SELECTMASK when comparing them.
161       wined3d: Use texture2D to sample in pshader_glsl_texdp3tex().
162       wined3d: Make use of the texUnitMap in drawStridedSlow as well.
163       wined3d: Fix various incorrect uses of GL_LIMITS(texture_stages) and GL_LIMITS(sampler_stages).
164       wined3d: Do not mark texture stages > MAX_TEXTURES dirty, they don't exist.
165       wined3d: Keep track of what stage a texturing unit is mapped to.
166       wined3d: Keep track of what fixed function texture stages are in use.
167       wined3d: Split of the mapping of fixed function samplers from IWineD3DDeviceImpl_FindTexUnitMap().
168       wined3d: Remove the sharing of mapping code for fixed function and pixel shader samplers.
169       wined3d: Split of the mapping of pixel shader samplers from IWineD3DDeviceImpl_FindTexUnitMap().
170       wined3d: Rename max_samplers to max_fragment_samplers.
171       wined3d: Add max_vertex_samplers and max_combined_samplers to WineD3D_GL_Info.
172       wined3d: Increase the sizes of texturing related arrays, in order to support vertex textures.
173       wined3d: Map vertex sampler numbers to the correct internal array indices for GetSamplerState and SetSamplerState.
174       wined3d: Map vertex sampler numbers to the correct internal array indices for GetTexture and SetTexture.
175       wined3d: Cleanup GL extension detection.
176       wined3d: Implement texldl.
177       wined3d: Map vertex samplers to a texturing unit.
178       wined3d: Check more thoroughly if a stage references a texture.
179       wined3d: Cleanup device_map_fixed_function_samplers().
180       wined3d: In device_map_psamplers(), only touch the sampler mapping for samplers that are used by the shader.
181       wined3d: Get rid of the oneToOneTexUnitMap field.
182
183 Hans Leidekker (4):
184       pdh: Add public headers.
185       pdh: Implement PdhOpenQuery{A, W} and PdhCloseQuery.
186       pdh: Implement PdhAddCounter{A, W} and PdhRemoveCounter.
187       pdh: Implement PdhCollectQueryData.
188
189 Huw Davies (5):
190       wineps.drv: Ignore ExtTextOut calls that occur before the job has started.
191       oleaut32: Interfaces that derive from IDispatch should be marshaled as VT_DISPATCH.
192       oleaut32: Implement marshaling of VT_BYREF interfaces.
193       oleaut32: Handle marshaling of VARTYPE-less FADF_VARIANT safearrays.
194       oleaut32: Extend _invoke to cope with more args.
195
196 Jacek Caban (24):
197       mshtml: Don't check out VT in exec_fontsize.
198       mshtml: Move keypress event listener to separated object.
199       mshtml: Move load event listener to separated object.
200       mshtml: Get rid of no longer used nsIDOMEventListener interface in NSContainer.
201       mshtml: Added nsIEmbeddingSiteWindow::SetFocus implementation.
202       mshtml: Added nsIEmbeddingSiteWindow:[Get|Set]Visibility implementation.
203       mshtml: Activate nsWebBrowser after creating document window.
204       mshtml: Notify IOleControlSite about focus changes.
205       mshtml: Set focus to FALSE in InPlaceDeactivate.
206       mshtml: Added IOleControlSite tests.
207       mshtml: Better test of QueryInterface.
208       mshtml: Added IOleInPlaceUIWindow tests.
209       mshtml: Added IHTMLDOMNode::get_nodeName implementation.
210       mshtml: Added beginning DOM tests.
211       mshtml: Added more QueryInterface tests.
212       mshtml: Correctly handle delete key in editor mode.
213       mshtml: Added IDM_DELETE support in QueryStatus.
214       mshtml: Added Exec(IDM_DELETE) implementation.
215       mshtml: Don't use dynamic allocation for connection points.
216       mshtml: Store connection point as a list.
217       mshtml: Move IConnectionPointContainer to the separated struct.
218       mshtml: Make connection points container independent.
219       mshtml: Added IConnectionPointContainer implementation to HTMLBodyElement.
220       mshtml: Add IID_IPropertyNotifySink and DIID_HTMLTextContainerEvents connection points to HTMLBodyElement.
221
222 James Hawkins (20):
223       msi: Forward MsiApplyPatchA to MsiApplyPatchW.
224       msi: Implement MsiApplyPatchW.
225       msi: Patches are applied based on ProductCode, not ProductID.
226       msi: Send the expected data to set_deferred_action_props.
227       msi: Properly delete rows from the table, instead of zeroing out the row.
228       ntoskrnl.exe: Add a stub implementation of KeInitializeTimer.
229       msi: Fetch the volume name when getting disk info.
230       msi: Add a stub implementation of MsiQueryComponentStateA.
231       msi: Add tests for publishing and unpublishing products, features, and components.
232       msi: Add tests for MsiQueryProductState.
233       msi: Validate MsiQueryProductCode parameters.
234       msi: If the user product key exists, the product's state is advertised.
235       msi: Use the correct registry key when detecting a published product.
236       msi: Any value of WindowsInstaller besides 0 means the product is installed.
237       msi: If the UserData product key exists, but the user product key doesn't, the product is absent.
238       msi: Set the WindowsInstaller value of the UserData product key when publishing the product.
239       msi: Add support for remote handles.
240       msi: Reference count the custom action data to avoid freeing the data by another thread.
241       msi: Add tests that show '!=' is not a valid conditional expression operator.
242       msi: Ignore invalid conditional expressions when checking the launch conditions.
243
244 Jason Edmeades (11):
245       cmd.exe: Add basic support for && and (...) syntax.
246       cmd.exe: Pass command structure into WCMD_pipe, not command line itself.
247       cmd.exe: Pass the command list through so it is available to built in commands.
248       cmd.exe: GOTO throws away any preloaded multi part/line command.
249       cmd.exe: Lines starting with REM ignore any multiline/part characters.
250       cmd.exe: EXIT /b skips any residual commands.
251       cmd.exe: Parse multipart FOR statements.
252       cmd.exe: Correctly parse IF ELSE plus multipart/multiline.
253       cmd.exe: Support IF..ELSE processing tolerate multiline/part lines.
254       cmd.exe: Fix FOR so it works as 'well' as before.
255       cmd.exe: for loop by default only matches files.
256
257 Jason Green (1):
258       winscard: Add extended stub for SCardEstablishContext.
259
260 Jeff Latimer (3):
261       hnetcfg: Stub implementation of the dll.
262       crypt32: Fix possible dereference of NULL ptr.
263       cabinet: Fix a potential NULL reference.
264
265 Juan Lang (18):
266       wincrypt: Add missing message flags and parameters.
267       crypt32: Don't return fake HCRYPTMSG from CryptMsgOpenTo*.
268       crypt32: Add basic tests for CryptMsg functions.
269       crypt32: Add basic parameter checking to CryptMsgOpenTo*.
270       crypt32: Add base message type and use it to implement CryptMsgDuplicate and CryptMsgClose.
271       crypt32: Test CryptMsgOpenToEncode for data messages.
272       crypt32: Test CryptMsgUpdate for data messages opened to encode.
273       crypt32: Test CryptMsgGetParam for data messages opened to encode.
274       crypt32: Stub CryptMsgOpenToEncode for data messages.
275       crypt32: Add a get param function, use it to implement CryptMsgGetParam.
276       crypt32: Add an update function, use it to implement CryptMsgUpdate.
277       crypt32: Store stream info in message.
278       crypt32: Add a finalized member to message.
279       crypt32: Implement CryptMsgUpdate for data messages opened to encode.
280       crypt32: Add a stub get param function for data messages and remove stub message from open function.
281       crypt32: Add tests for data message encoding.
282       crypt32: Implement getting bare content for data messages opened to encode.
283       crypt32: Implement getting content for data messages opened to encode.
284
285 Kai Blin (1):
286       ws2_32: Return WSAEINVAL for unhandled address families in WSAStringToAddress.
287
288 Ken Thomases (4):
289       winecoreaudio: Extract loop, wodNotifyClient for WAVEHDRs in list, to separate function.
290       winecoreaudio: Move a variable declaration to narrower scope, reduce whitespace.
291       winecoreaudio: Move notify of completed WAVEHDRs to end of wodReset.
292       winecoreaudio: Make wodReset fail if called on a closed device.
293
294 Kirill K. Smirnov (1):
295       winhelp: Fix popup window style.
296
297 Konstantin Kondratyuk (2):
298       uninstaller: Add Russian resources.
299       programs/winefile: Add Russian resources.
300
301 Kovács András (1):
302       Add dwmapi.dll stub.
303
304 Lei Zhang (6):
305       riched20: Add tests for EM_FORMATRANGE.
306       winex11.drv: Send WM_MOUSEACTIVATE before closing a window.
307       winex11.drv: Reset focus if application does not want to be activated.
308       comctl32: Reduce duplicate code between PropertySheetA/W.
309       comctl32: Reduce duplicate code between PROPSHEET_CollectSheetInfoA/W.
310       comctl32: Determine if PSH_PROPSHEETPAGE is set once.
311
312 Maarten Lankhorst (8):
313       winealsa: Finally get rid of the thread in alsa directsound acceleration.
314       dsound: Give rougher estimates for fraglen to satisfy alsa.
315       dsound: Simplify mixing by removing remixing support, and fix its waveout breakage.
316       dsound: Tune some parameters for alsa waveout.
317       winealsa: Optimize GetPosition() more in dsalsa.
318       dsound/winealsa: Remove writelead for alsa directsound.
319       winealsa: Silence buffer on allocation.
320       dsound: Fix calcplayposition to handle mixed amount > buffer length better.
321
322 Marcus Meissner (1):
323       wined3d: Fixed pointer casting and additions.
324
325 Michael Stefaniuc (34):
326       msvcrt: Move definition of 2 static inline functions up and remove the forward declaration of those. Found by sparse.
327       shlwapi: Do not use wide character constants.
328       winspool.drv/tests: Specify the arguments of the function in the function.
329       winmm: Do not dump the version info when loading drivers.
330       shlwapi: Remove more wide character constants.
331       riched20: Do not use wide character constants.
332       setupapi: Do not use wide character constants.
333       oleaut32: Do not use wide character constants.
334       ole32: Do not use wide character constants.
335       comctl32: Do not use wide character constants.
336       dmloader: Do not use wide character constants.
337       dsound: Fix missing unlock on an error path. Found by Smatch.
338       winealsa.drv: Fix missing unlock on the error path. Found by Smatch.
339       msvcrt: Do not use wide character constants.
340       gdi32: Multi-character character constants aren't portable as their behaviour is compiler dependent according to the C standard. Found by sparse.
341       ddraw: Fix missing unlock on an error path. Found by Smatch.
342       winejack.drv: Fix missing unlock. Found by Smatch.
343       msacm32: Replace malloc/free with HeapAlloc/HeapFree.
344       winmm: Replace malloc with HeapAlloc.
345       cmd: Remove superfluous casts of void pointers to other pointer types.
346       quartz: Remove superfluous casts of void pointers to other pointer types.
347       iccvid: Remove superfluous casts of void pointers to other pointer types.
348       ole32: Remove superfluous casts of void pointers to other pointer types.
349       oleaut32: Remove superfluous casts of void pointers to other pointer types.
350       kernel32: Remove superfluous casts of void pointers to other pointer types.
351       gdi32: Remove superfluous casts of void pointers to other pointer types.
352       wined3d: Remove superfluous casts of void pointers to other pointer types.
353       dbghelp: Remove superfluous casts of void pointers to other pointer types.
354       wininet: Remove superfluous casts of void pointers to other pointer types.
355       winedos: Remove superfluous casts of void pointers to other pointer types.
356       janitorial: Remove superfluous casts of void pointers to other pointer types.
357       winefile: Do not use wide character constants.
358       winefile: Do not use the TEXT() macro on character constants. The implicit cast from char to WCHAR works as well in UNICODE mode.
359       comctl32: Replace malloc() with HeapAlloc().
360
361 Misha Koshelev (20):
362       shell32: Conform to native in SHELL_ArgifyW for unquoted %1 in registry keys.
363       wine.inf: Quote %1 for Msi.Package shell actions per native.
364       gdi32/tests: Add framework for tests of drawing functions in paths, add test for ArcTo in paths.
365       gdi32: Fix ArcTo to use proper starting and ending points.
366       gdi32: Set current position properly after ArcTo.
367       gdi32: Allow arbitrary start entry types in PATH_DoArcPart, not just PT_MOVETOs.
368       gdi32: Handle ArcTo in paths as native.
369       gdi32/tests: Expand framework for tests of drawing functions in paths, add test for AngleArc in paths.
370       gdi32: Emulate AngleArc using ArcTo.
371       gdi32/tests: Fix test_widenpath to succeed on Win98.
372       setupapi: Simplify code as native setupapi does not handle quoted paths.
373       wine.inf: Fix path to rundll32.exe in inffile/shell/install/command subkey.
374       winemenubuilder: Create/release semaphore only around call to wineshelllink.
375       winemenubuilder: Wait for parent process to finish instead of creating RunOnce entry that may never run.
376       winemenubuilder: Do not WINE_ERR in InvokeShellLinker if we are going to try again.
377       shell32/tests: Allow individual tests in check_lnk to be todo_wine'd.
378       shell32/tests: Add test for shell links to existing non-executable files.
379       shell32/tests: Allow CoCreateInstance to return E_NOINTERFACE to pass on Win98; add skips and display return values.
380       shell32/tests: Fix tests of IShellLinkA_SetPath to conform on both Windows 98 and XP.
381       shell32: Fix shelllink creation to non-executable files and remove unnecessary code.
382
383 Nigel Liang (1):
384       winex11.drv: Remove call to XCreateFontSet.
385
386 Paul Vriens (13):
387       crypt32/tests: Don't crash on Vista.
388       user32/tests: Only do the GetProcAddress once.
389       mscms/tests: Don't crash on Vista.
390       mscms/tests: Fix wrong test for failure.
391       kernel32/tests: Don't crash on Vista.
392       kernel32/tests: Don't crash (on Vista).
393       wintrust/tests: Add tests for CryptCATAdminCalcHashFromFileHandle.
394       advapi32/tests: Add some service related tests.
395       advapi32/service: Use the correct registry key for the service account.
396       advapi32/service: Fix wrong key.
397       advapi32/service: Return (more) correct needed buffersize.
398       advapi32/service: Make sure we fill all struct members.
399       advapi32/service: Don't rely blindly on type.
400
401 Pedro Maia (1):
402       shell32: Update paths in Portuguese resource.
403
404 Rob Shearman (37):
405       rpcrt4: Implement encapsulated union NDR functions.
406       widl: Implement pointer descriptions for all embedded pointer types.
407       widl: Fix detection of structures with non-conformant strings.
408       widl: Write out embedded pointers for the element type when writing out arrays.
409       widl: Always write out pointers if the structure is a pointer structure. Pointer are optional for conformant varying structures.
410       rpcrt4: Use the offset to array data in embedded pointer format descriptions.
411       rpcss: Remove lazy timeout mechanism and use __wine_make_system_process instead.
412       msi: Only use the long name for the file source if the file has one.
413       mshtml: The SRC value returned from HTMLElement_getAttribute should be an absolute, not relative URL.
414       mshtml: Implement HTMLElement_setAttribute.
415       mshtml: Fix HTMLDocument3_get_documentElement to get the right nsIDOMNode.
416       mshtml: Notify the Gecko stream listener that we stopped binding, if an error occurs in start_binding.
417       advapi32: Always set the requested fields of the security descriptor according to the info flags in GetNamedSecurityInfoW.
418       mshtml: Implement HTMLElement_get_children.
419       rpcrt4: Don't use add on the sizes of array elements to an open-ended structure; use FIELD_OFFSET with the array index instead.
420       rpcrt4: Add support for ServerAllocSize parameters.
421       rpcrt4: Add a STUBLESS_FREE phase for freeing the allocated memory in the server function.
422       rpcrt4: Return a fault packet if the interface/object pair in a request packet aren't registered.
423       rpcrt4: Close the connection if a protocol error or certain other kinds of errors occur, instead of returning it to the connection pool.
424       rpcrt4: Translate STATUS_ACCESS_VIOLATION exceptions caught whilst executing the stub function to ERROR_NOACCESS to prevent confusing exceptions occurring in the client.
425       rpcrt4: When an exception is raised, return the stored exception code instead of the generic RPC_S_CALL_FAILED.
426       rpcrt4: Store the assoc_group_id field returned from the bind_ack packet and use it when creating further connections in the association group.
427       rpcrt4: Try a lot harder to resuse existing connections by comparing inside the RpcQualityOfService and RpcAuthInfo objects.
428       rpcrt4: Set PointerBufferMark to the buffer location immediately after the non-pointer data in complex struct and array marshaling and unmarshaling to keep to the DCE/RPC specification.
429       rpcrt4: Implement marshalling/unmarshalling for the range NDR type.
430       rpcrt4: Implement marshalling, unmarshalling and buffer sizing for the context handle type.
431       rpcrt4: Dereference the pointer passed to the marshaling/unmarshaling/sizing routines in complex types for interface pointers.
432       msi: Implement MsiGetMode for MSIRUNMODE_SCHEDULED, MSIRUNMODE_COMMIT and MSIRUNMODE_ROLLBACK.
433       msi: Check the return value of VerQueryValueW in msi_get_disk_file_version.
434       msi: Free version after using lpVer in msi_get_disk_file_version as lpVer points inside of version.
435       msi: Fix loading string tables for databases that use 3-byte string references and that have a non-zero codepage (i.e. != CP_ACP).
436       msi: Fix bytes_per_column for binary types when the database is using 3-byte string references.
437       msi: Fix transforms to work when the number of bytes per string reference differs to that of the database it is being applied to.
438       rpcrt4: Remove the unused AuthInfo field from the RpcAssoc structure and Used from RpcConnection.
439       rpcrt4: Make pointers to RPCRT4_BuildBindHeader and RPCRT4_BuildBindAckHeader const.
440       rpcrt4: Store the assoc_group_id in the connections.
441       wine.inf: Add the SystemDrive environment variable.
442
443 Stefan Dösinger (26):
444       d3d9: Hold the lock in IDirect3D9 methods.
445       d3d9: Hold the lock in methods implemented in device.c.
446       d3d9: Hold the lock in cubetexture methods.
447       d3d9: Hold the lock in indexbuffer methods.
448       d3d9: Hold the lock in Pixelshader functions.
449       d3d9: Hold the lock in query methods.
450       d3d9: Release the wined3d query when the d3d9 query is destroyed.
451       d3d9: Hold the lock in stateblock methods.
452       ddraw: Test for incorrect surface desc sizes in GetSurfaceDesc.
453       d3d8: Convert fvfs to vertex declarations.
454       wined3d: Remove the FVF codepath from drawprim.
455       wined3d: Unload texture coords for all supported texture stages.
456       wined3d: Emulate tracking of multiple material properties.
457       ddraw: Add a test for incorrect surface desc sizes for Lock().
458       ddraw: Check for incorrect rectangles to DDrawSurface::Blt.
459       wined3d: Depthfill blits are allowed between BeginScene and Endscene.
460       d3d9: Hold the lock in suface methods.
461       d3d9: Hold the lock in swapchain methods.
462       d3d9: Hold the lock in Texture methods.
463       d3d9: Hold the lock in Vertexbuffer methods.
464       d3d9: Hold the lock in VertexDeclaration methods.
465       d3d9: Hold the lock in VertexShader methods.
466       wined3d: Move material applying to the state table.
467       wined3d: Clamp material power to 128.0.
468       wined3d: Skip the start offset to the source array in IWIneD3DVertexShaderImpl_SetLocalConstantsF.
469       wined3d: Some point sprite fixes.
470
471 Tim Schwartz (2):
472       net.exe: Add NET STOP.
473       net.exe: Add missing CloseServiceHandle().
474
475 Vitaliy Margolen (4):
476       dinput: Remove duplicate code.
477       dinput: Move parent dinput reference into base class.
478       dinput: Combine all Release functionality into base class.
479       dinput: Move key state array into object.
480
481 Vitaly Budovski (1):
482       winealsa: Fix incorrect callback private value.
483
484 --
485 Alexandre Julliard
486 julliard@winehq.org