msi: Simplify the check for a valid product code.
[wine.git] / ANNOUNCE
blob204a2963e1ad6ca7215f3e37e40abd80ef1d3832
1 This is release 0.9.56 of Wine, a free implementation of Windows on Unix.
3 What's new in this release:
4   - Proper handling of OpenGL/Direct3D windows with menu bars.
5   - Stubs for all the d3dx9_xx dlls.
6   - Several graphics optimizations.
7   - Many installer fixes.
8   - Improved MIME message support.
9   - Lots of bug fixes.
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:
15   http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.56.tar.bz2
16   http://prdownloads.sourceforge.net/wine/wine-0.9.56.tar.bz2
18 Binary packages for various distributions will be available from:
20   http://www.winehq.org/site/download
22 You will find documentation on
24   http://www.winehq.org/site/documentation
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.
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
33 Wine is available thanks to the work of many people. See the file
34 AUTHORS in the distribution for the complete list.
36 ----------------------------------------------------------------
38 Changes since 0.9.55:
40 Alexander Dorofeyev (8):
41       ddraw: Fix executebuffer branching with non-zero offset.
42       ddraw/tests: Add test for branch instruction with non-zero offset.
43       ddraw: Fix palette handling in IDirect3DTexture_Load.
44       ddraw/tests: Split d3d1 initialization and destruction into separate functions.
45       ddraw/tests: Add test for palette handling in IDirect3DTexture_Load.
46       wined3d: Take alpha from device palette entry for d3d 8 and later.
47       ddraw: Release interfaces when exiting with error.
48       ddraw/tests: Add a test of D3DTBLEND_MODULATE with P8 texture.
50 Alexandre Julliard (33):
51       comctl32: Process messages while waiting for the animation thread to finish.
52       msi/tests: Fix test that depends on the order of the files in a directory.
53       ntdll: Store the unhandled exception filter at startup to avoid race conditions.
54       kernel32: Don't save the signal mask in sigsetjmp.
55       shell32: Add support for the NoDrives registry key.
56       libwine: Abstract part of the utf8 char decoding to a separate function.
57       libwine: Add option for Unicode composition in utf-8 -> wchar conversion.
58       kernel32: On Mac OS, recompose the Unicode strings we get from the OS.
59       browseui: Remove WINAPI from functions that don't need it.
60       comctl32: Remove unnecessary \n in trace.
61       gdi32: Export the DC hook functions as 32-bit functions.
62       winex11: Use GetDCHook to retrieve the dce pointer instead of storing it in the physdev structure.
63       kernel32: Fixed the active processor mask on Mac OS.
64       winedbg: Avoid using size_t in an error message.
65       user32: Rewrite SWP_DoOwnedPopups to take into account topmost windows.
66       winex11: Move the raising of windows on SetFocus to the X11 driver where it belongs.
67       gdi32: Reimplemented IsGDIObject16 and moved it to gdi16.c.
68       gdi32: Reimplemented GetObject16 and moved it to gdi16.c.
69       gdi32: Get rid of the 16-bit GetObject functions.
70       gdi32: Move a few more gdiobj functions to gdi16.c.
71       gdi32: Avoid calling GetObject16 from 32-bit code.
72       wineboot: Delete files from dllcache once they have been installed.
73       Avoid the nounistd option that doesn't exist on older flex, define YY_NO_UNISTD_H instead.
74       server: Don't access the process after send_client_fd as it may have been killed.
75       dxguid: Add a few more iids.
76       uuid: Remove a few iids that don't belong here.
77       uuid: Fixed the CLSID_Picture_EnhMetafile definition.
78       user32: Pass the modified SetWindowPos flags to the set_window_pos server request.
79       winex11: Re-introduce a separate X11 window for the client area of top-level windows.
80       winex11: Make the BitBlt short-cuts more generic to apply to all possible ROPs.
81       winex11: Keep track of the window colormap and free it on destroy.
82       winex11: Re-create the client window when setting the pixel format on a top-level window.
83       winex11: Force the client dimensions to at least 1x1 in sync_gl_drawable.
85 Alistair Leslie-Hughes (28):
86       msxml3: Corrected tests for msxml service packs versions.
87       msxml3: Implement IXMLDOMProcessingInstruction target.
88       msxml3: Implement IXMLDOMAttribute name property.
89       msxml3: Support functions for typelib.
90       msxml3: Implemented IDispatch for IXMLDOMText.
91       msxml3: Implemented IDispatch for IXMLDOMSchemaCollection.
92       msxml3: Implemented IDispatch for IXMLDOMProcessingInstruction.
93       msxml3: Implemented IDispatch for IXMLDOMCDATASection.
94       msxml3: Implemented IDispatch for IXMLDOMComment.
95       msxml3: Implemented IDispatch for IXMLDOMDocumentFragment.
96       msxml3: Implemented IDispatch for IXMLDOMElement.
97       msxml3: Implemented IDispatch for IXMLDOMEntityReference.
98       msxml3: Implemented IDispatch for IXMLDOMNamedNodeMap.
99       msxml3: Implemented IDispatch for IXMLDOMParseError.
100       msxml3: Implemented IDispatch for IXMLDOMNodeList.
101       msxml3: Implemented IDispatch for IXMLElement.
102       msxml3: Implemented IDispatch for IXMLDocument.
103       msxml3: Implemented IDispatch for IXMLDOMDocument2.
104       msxml3: Implement IXMLDOMText length property.
105       msxml3: Implemented IDispatch for IXMLDOMAttribute.
106       msxml3: Implement put_dataType.
107       slc: Initial stub DLL.
108       msxml3: Correct get_nodeValue for PI Nodes.
109       msxml3: Implement get_data for PI Nodes.
110       msxml3: Added PI tests.
111       msxml3: Implement IDispatch for IXMLDOMImplementation.
112       msxml3: Implement IDispatch for IXMLDOMNodeList.
113       slc: Added stub for SLGetWindowsInformationDWORD.
115 Andrew Riedi (1):
116       user32: Test LoadImage() to load an icon as a cursor.
118 Andrew Talbot (14):
119       winejoystick.drv: Remove unneeded casts.
120       wineoss.drv: Remove unneeded casts.
121       atl: Assign to structs instead of using memcpy.
122       avifil32: Assign to structs instead of using memcpy.
123       cabinet: Assign to structs instead of using memcpy.
124       comctl32: Assign to structs instead of using memcpy.
125       comdlg32: Assign to structs instead of using memcpy.
126       dbghelp: Assign to struct instead of using memcpy.
127       d3d9: Assign to struct instead of using memcpy.
128       comdlg32: Rename some identifiers to reflect their width.
129       crypt32: Assign to structs instead of using memcpy.
130       dmband: Assign to struct instead of using memcpy.
131       dmcompos: Assign to structs instead of using memcpy.
132       dmband: Rename identifiers to remove false implications of type.
134 Aric Stewart (6):
135       imm: More correctly handle the presence of the default IME input window on IME open and close.
136       imm: Implement ImmGenerateMessage.
137       version: Check for 16-bit file format before returning ERROR_RESOURCE_DATA_NOT_FOUND.
138       imm: Ensure hCompStr handle is not NULL and check for empty composition strings properly.
139       gdi32: Japanese Windows had a default fallback Font SystemLink of Microsoft Sans Serif. Implement that for Japanese.
140       coreaudio: Set mDataByteSize of the buffer to the amount data provided. Greatly helps reduce audio corruption on buffer underflows.
142 Austin English (1):
143       README: Update some outdated information.
145 Chris Robinson (1):
146       winemp3: Don't keep unused data buffered.
148 Christian Authmann (1):
149       explorer: Add meaningful titles to virtual desktop windows.
151 Dan Hipschman (1):
152       widl: Allow is_string_type to work for typedef'd types.
154 Dan Kegel (1):
155       msvcrt: Fix EOF behavior on read from pipe or console.
157 David Adam (1):
158       d3dx8: Fix a typo in d3dx8math.h.
160 Detlef Riekenberg (1):
161       ddraw/tests: Avoid endless loop, when T&L is not supported.
163 Divan Burger (1):
164       comdlg32: Fix memory leak in colour dialog.
166 Dmitry Timoshkov (4):
167       user32: Add a couple of tests for WS_EX_TOPMOST.
168       user32: Use custom window procs instead of DefWindowProcA/W in the IsWindowUnicode test.
169       user32: Add a z-order test for owned popup windows.
170       winex11.drv: Add an optimized path for BitBlt(SRCINVERT).
172 Eric Pouech (1):
173       dbghelp: Fix erroneous access to dwarf symbol cache.
175 Erich Hoover (2):
176       kernel32: Implement ReplaceFileA.
177       kernel32: Add tests for ReplaceFileA and ReplaceFileW.
179 Francois Gouget (19):
180       user32/tests: Add the trailing '\n' to ok() calls.
181       tests: Avoid InterlockedExchangeAdd() as it is not supported on Windows 95.
182       UTF-8 resource files must explicitly say so with a pragma.
183       kernel32: Add prototypes for [GS]etDynamicTimeZoneInformation().
184       kernel32/tests: Fix the time tests when 'Automatically adjust clock for daylight saving changes' has been unset.
185       mscms: [GS]etColorSpace() are not supposed to be defined in icm.h.
186       advapi32: Add some missing CRED_TYPE_XXX constants.
187       advapi32: Add a rudimentary implementation of CredGetSessionTypes().
188       advapi32/tests: Factorize the password constants.
189       advapi32/tests: Check that a credential type is supported before testing it. Test CRED_TYPE_DOMAIN_VISIBLE_PASSWORD credentials. Factorize the CredentialBlob checks.
190       Assorted spelling fixes.
191       mscms/tests: EnumColorProfiles() should not fail even if there are no ICM files in the 'color directory'.
192       mscms/tests: The presence of an ICM file in the color directory has nothing to do with the presence of a registered RGB profile.
193       inetcomm: Fix compilation on systems that don't support nameless unions.
194       msi: Use 'HKCU\Software\Microsoft\MS Setup (ACME)' as a source for the default user and company names before falling back to the RegisteredXXX values. Fix the conformance test accordingly.
195       advapi32/tests: Remove an obsolete comment: Wine's on-disk registry format now supports string values with no trailing '\0'.
196       advapi32/tests: Check whether RegGetValue() '\0'-terminates the buffer when retrieving a zero-byte string value.
197       wininet: Document HttpAddRequestHeadersW()'s handling of the trailing '\0'. Fix tracing of the corresponding header strings as they may not be '\0' terminated.
198       wininet/tests: Don't include the trailing '\0' in dwHeadersLength otherwise HttpSendRequestEx() sends it too which some servers object to.
200 Frans Kool (29):
201       comdlg32: Added Dutch translations.
202       shell32: Added Dutch translations.
203       oleview: Added Dutch translations.
204       winefile: Added Dutch translations.
205       regedit: Added Dutch translations.
206       taskmgr: Corrected Dutch translations.
207       cmd: Added & corrected Dutch translations.
208       winecfg: Added missing Dutch translations.
209       cmdlgtst: Added missing Dutch translations.
210       mpr: Added Dutch translations.
211       notepad: Added missing LGPL License in Dutch translations.
212       oledlg: Added missing Dutch translations.
213       shdoclc: Added missing Dutch translations.
214       mshtml: Added missing Dutch translations.
215       progman: Added missing LGPL-license in Dutch translations.
216       wineconsole: Added missing Dutch translations.
217       winhelp: Added missing Dutch translations.
218       localui: Created Dutch translations.
219       xcopy: Created Dutch translations.
220       browseui: Created Dutch translations.
221       credui: Created Dutch translations.
222       net: Created Dutch translations.
223       msvfw32: Created Dutch translations.
224       write: Created Dutch translations.
225       wineboot: Created Dutch translations.
226       msvidc32: Created Dutch translations.
227       localspl: Created Dutch translations.
228       iccvid: Created Dutch translations.
229       crypt32: Created Dutch translations.
231 Gerald Pfeifer (4):
232       gdi32: For unsigned types, directly use INTERNAL_YDS
233       shell32: Adjust a format specifier and remove a redundant range check in ILGetDisplayNameExW().
234       msi: Adjust the signedness of three variables.
235       msi: Remove unused parameter to msi_comp_find_prodcode().
237 Hans Leidekker (3):
238       wininet: Honour the version override in HttpOpenRequest.
239       wininet: Handle the "100 Continue" response by ignoring it.
240       wininet: Rename a function to better match what it does.
242 Huw Davies (20):
243       inetcomm: Add the beginnings of IMimeMessage_Load.
244       inetcomm: Partial implementation of IMimeBody_GetData.
245       inetcomm: Create the root body in IMimeMessage_Load.
246       inetcomm: Implement IMimeMessage_BindToObject.
247       inetcomm: Added missing initialization.
248       inetcomm: Add a sub-stream implementation.
249       inetcomm: Create a body tree for multipart messages.
250       inetcomm: Implement IMimeMessage_GetBody.
251       inetcomm: Implement IMimeMessage_CountBodies.
252       inetcomm: Implement IMimeMessage_Find{First,Next}.
253       inetcomm: Forward a few IMimeMessage functions to the appropriate IMimeBody functions.
254       inetcomm: Implement IMimeMessage_GetTextBody.
255       inetcomm: Implement IMimeMessage_GetAttachments.
256       inetcomm: Implement IMimeBody_GetProp for the primary context type.
257       inetcomm: Stub IMime{Message, Body}_GetCharset to return a NULL charset.
258       inetcomm: Stub for MimeOleGetCharsetInfo.
259       inetcomm: Implement IMimeMessage_GetMessageSource.
260       inetcomm: Improve some TRACEs.
261       inetcomm: Add IStream_CopyTo to the sub-stream implementation.
262       user32: Add a test for CS_OWNDC windows that are created invisible.
264 Jacek Caban (25):
265       mshtml: hr element is not a space element for moving functions.
266       mshtml: Fixed bound_pos handling in move_prev_chars.
267       mshtml: Mode range tests.
268       wininet: Added beginning support for HTTP cache files.
269       wininet: Added correct InternetQueryOption(INTERNET_OPTION_DATAFILE_NAME) implementation.
270       wininet: Added cache test.
271       wininet: Code clean up.
272       urlmon: Reimplement URLDownloadToFileW on top of URL moniker.
273       urlmon: URLDownloadToFileA code clean up.
274       urlmon: Added TYMED_FILE support to CopyStgMedium.
275       urlmon: Added URLDownloadToFile tests.
276       urlmon: E_PENGING returned by Start is not an error.
277       urlmon: Added audio/basic MIME filter.
278       urlmon: Use BindToStorage hack only for binding to IStream.
279       mshtml: Don't mix nsresult with HRESULT.
280       browseui: Code clean up.
281       mshtml: Added nsINetUtil interface to nsIOService.
282       mshtml: Report true scheme for about:blank URL.
283       urlmon: Fixed crash on old IE.
284       urlmon: Optimize registering urlmon protocols.
285       urlmon: Optimize get_protocol_info for urlmon protocols.
286       urlmon: Make session object thread safe.
287       urlmon: Correctly handle creating object failure.
288       urlmon: 0x800c0008 is INET_E_DOWNLOAD_FAILURE.
289       browseui: Code clean up.
291 James Hawkins (35):
292       msi: Add tests for not using quotes in SQL queries.
293       msi: Handle the special table _ForceCodepage in MsiDatabaseExport.
294       msi: Don't check for the existence of the msi package when running a concurrent install.
295       msi: Successfully return an empty string when requesting a record index beyond the record's size.
296       msi: Add tests for MsiGetProductInfo.
297       msi: Return ERROR_INVALID_PARAMETER if szProduct is invalid.
298       msi: Test the remaining installer properties returned by MsiGetProductInfo.
299       msi: Reimplement MsiGetProductInfo.
300       msi: Read the language info from the file.
301       msi: Use MsiViewModify instead of building a SQL query when adding rows to the table.
302       msi: Handle carriage returns in MsiDatabaseImport.
303       msi: Add tests for source folder resolution.
304       itircl: Add a stub implementation of itircl.dll.
305       tools/wine.inf: Create a fake file for hh.exe.
306       tools/wine.inf: Create fake dlls for itircl.dll and itss.dll.
307       msi: Set the UserLanguageID property.
308       msi: Convert REG_DWORD properties to strings in MsiGetProductInfo.
309       msi: Add tests for the MSIMODIFY_REFRESH command.
310       msi: Implement the MSIMODIFY_REFRESH command of MsiViewModify.
311       msi: Add tests for enumerating the source list after publishing.
312       msi: Add tests for MsiSourceListEnumSources.
313       msi: Add tests for MsiSourceListSetInfo.
314       msi: Validate the szProduct parameter of MsiSourceListSetInfo.
315       msi: Return ERROR_UNKNOWN_PATCH if dwOptions contains MSICODE_PATCH.
316       msi: Return the results from OpenSourceKey.
317       msi: Simplify the MEDIAPACKAGEPATH and DISKPROMPT cases.
318       msi: Validate the dwOptions parameter of MsiSourceListSetInfo.
319       msi: Return ERROR_INVALID_PARAMETER if the context is machine and szUserSid is non-NULL.
320       msi: Remove invalid FIXMEs.
321       msi: Forward MsiSourceListEnumSourcesA to a stub implementation of MsiSourceListEnumSourcesW.
322       msi: Implement MsiSourceListEnumSources.
323       msi: Publish a few SourceList properties.
324       msi: Allow enumerating the sources without querying the source name.
325       msi: Fix the INSTALLPROPERTY_LASTUSEDSOURCE case of MsiSourceListSetInfo.
326       msi: Fix the size of the data sent in to RegSetValueExW.
328 Jeff Latimer (4):
329       pdh/tests: Add test for size > 0 but no buffer.
330       pdh: Check for size > 0 but no buffer.
331       pdh: Remove unnecessary test done in PdhLookupPerfNameByIndexW.
332       pdh: Pass parameters through to PdhLookupPerfIndexByNameW for checking.
334 Juan Lang (6):
335       advapi32: Fix CryptVerifySignatureW test failures on Win98SE and NT4.
336       crypt32: Fix test failures on NT4.
337       crypt32: Add to error message to track down NT4 failures.
338       crypt32: Fix a test failure on Vista, and make Wine match the newer (and saner) behavior.
339       crypt32: Allow some last errors set by Vista.
340       crypt32: Vista doesn't actually add duplicate usage identifiers; fix tests and change Wine to match.
342 Kirill K. Smirnov (3):
343       systray: Avoid modifying non-existent tooltip windows of non-existent icon windows when application updates tip of hidden icon.
344       systray: Correctly handle icon addition/deletion.
345       systray: Better validate icon owner.
347 Lei Zhang (8):
348       qedit: Skeleton implementation of qedit.dll.
349       qedit: Add the DirectShow ClassFactory.
350       include: Generate qedit.h, add ISampleGrabberCB interface.
351       include: Add ISampleGrabber interface.
352       include: Add IMediaDet interface and MediaDet class.
353       qedit: Add MediaDet registration.
354       qedit: Add tests directory and a simple test.
355       qedit: Add stub implementation of MediaDet.
357 Louis Lenders (1):
358       shdocvw: Pretend success in WebBrowser_get_RegisterAsDropTarget.
360 Maarten Lankhorst (12):
361       include: Add IRunnableTask interface.
362       browseui: Add undocumented Component Category Cache Daemon stub.
363       user32: Fix a message test that would only pass on wine.
364       cryptdlg: Add initial stub dll.
365       gpkcsp: Add initial stub dll.
366       initpki: Add initial stub dll.
367       mssip32: Add initial stub dll.
368       sccbase: Add initial stub dll.
369       slbcsp: Add initial stub dll.
370       softpub: Add initial stub dll.
371       dssenh: Add initial stub dll.
372       advapi: Check if service really exists before bombing out in CreateService.
374 Marcus Meissner (12):
375       dinput: Make _dump_mouse_state static.
376       include: Added some defines for EnumDevicesBySemantics.
377       dinput: Add a dumper for LPDIACTIONFORMAT.
378       dinput: Add debug output for IDirectInput8A::EnumDevicesBySemantics.
379       dinput: Removed superflous < 0 check.
380       msi: Fixed error reporting of add_streams_to_table.
381       taskmgr: Make stuff static.
382       user32: Handle error returns from ImmGetCompositionString.
383       dinput: Some debug output for BuildActionMap.
384       wintab32: Mark some signed entities as LONG.
385       winedump: Check return value of fetch_block (Coverity).
386       netapi32: Added some return value checking.
388 Michael Stefaniuc (4):
389       gdi32: Move two 16bit function stubs to gdi16.c.
390       gdi32: Move EnumFonts16 and EnumFontFamilies16 to gdi16.c.
391       ddraw: Add missing unlock on error path. Found by Smatch.
392       gdi32: Move EnumFontFamiliesEx16() to gdi16.c and reimplement it based on EnumFontFamiliesExW().
394 Mikołaj Zalewski (16):
395       winhelp: Update Polish translation.
396       credui: Update Polish translation.
397       browseui: Add Polish translation.
398       wineboot: Add Polish translation.
399       write.exe: Add Polish translation.
400       wordpad: Update Polish translation.
401       wordpad: File > New now opens a dialog so there should be an ellipsis at the end.
402       browseui/tests: make the ACLMulti test pass under Windows Vista.
403       browseui: aclmulti: Follow the Windows Vista behavious in Expand.
404       browseui: Implement PROGDLG_NOMINIMIZE.
405       devenum: Convert resource file to UTF-8.
406       devenum: Add Polish translation.
407       oleview: Add Polish translation.
408       oleview: Add ellipsis to menu items that show dialogs.
409       oleview: Move the TypeLib open dialog filter message into a resource.
410       Make Italian, Spanish, Dutch and German resources use SUBLANG_NEUTRAL.
412 Paul Vriens (15):
413       advpack/tests: Show errors in hex.
414       crypt32/tests: Skip test if we don't have enough rights.
415       wintrust/tests: Use GetModuleHandleA instead of LoadLibraryA.
416       wintrust/tests: Change test_RegPolicyFlags to use the same logic as the rest of the tests.
417       rpcrt4/tests: Vista uses the same status values as Windows 2003.
418       wintrust/crypt: Fix some test failures for a NULL parameter.
419       rpcrt4/tests: Don't crash on WinXP SP3.
420       opengl32/tests: Only use functions if they are implemented.
421       advapi32/tests: Only use functions if they are implemented.
422       kernel32/tests: ReplaceFile[AW] doesn't exist on win9x.
423       shell32/tests: GetLongPathNameA is not implemented on win95.
424       advapi32/tests: CryptVerifySignatureW is not implemented on win98.
425       netapi32/tests: Adding a user with a too long name succeeds on NT4.
426       msi/tests: Services are not available on win9x.
427       advapi32/tests: Skip tests when our language isn't LANG_ENGLISH.
429 Peter Oberndorfer (1):
430       user32: Fix caption bar being drawn 1 pixel too high.
432 Reece H. Dunn (3):
433       winecfg: Fixed reading in colour data from a theme file.
434       winecfg: Allow theme colour names to be case insensitive when reading them from a file.
435       user32: Improve the combo tests to check when the CBN_SELCHANGE notification is sent.
437 Rico Schüller (1):
438       wined3d: Fix memcpy with wrong size parameter to simple assignment in GetScissorRect.
440 Rob Shearman (75):
441       mshtml: Fix inserting a hyperlink when text is already selected.
442       kernel32: Implement ReplaceFileW.
443       libport: Use configure guards for include files that may not be present.
444       include: Fix some typos in dpaddr.h.
445       ole32: Fix reference count leak in BindMoniker.
446       ole32: Fix local-variable shadowing in apartment_hostobject_thread.
447       ole32: Remove an assert that is useless and triggers warnings elsewhere in static analysis tools.
448       ole32: Fix a potentially confusing combination of conditional and bitwise or operators by adding extra brackets.
449       ole32: Fix potential NULL dereference of qiresults in ClientIdentity_QueryMultipleInterfaces.
450       mshtml: Remove extra semi-colons after cpp_quote in nsiface.idl.
451       mshtml: All interfaces in nsiface.idl are local.
452       mshtml: Add a dummy member to nsMargin as empty structs aren't valid in C89.
453       avifil32: Pass the number of characters to LoadStringW, not the number of bytes.
454       rpcrt4: Add some traces to async_notifier_proc.
455       mshtml: Fix a typo in nsiface.idl.
456       ntdll: Add an exception handler around calls to module entry points.
457       msi: Add stub implementation of MsiIsProductElevatedA/W.
458       advapi32: The lpcbSecurityDescriptor parameter to RegGetKeySecurity isn't optional, so don't complicate the code by treating as though it is.
459       dbghelp: Fix a typo in SymLoadModuleExW that caused the wrong number of characters to be passed to lstrcpynW.
460       dxdiagn: Fix the character count passed to snprintfW in DXDiag_AddFileDescContainer and DXDiag_InitDXDiagDisplayContainer.
461       msrle32: Fix the character count passed into LoadStringW in About.
462       hhctrl.ocx: Fix the character count passed to GetFullPathNameW in OpenCHM and NavigateToChm.
463       ole32: Fix the character count passed to GetClipboardFormatNameW in WriteFmtUserTypeStg.
464       shlwapi: IID_IInternetSecurityMgrSite is now defined so remove the local definition from IUnknown_GetWindow.
465       user32: Fix incorrect character count passed to GetWindowTextW in ICONTITLE_Paint.
466       shell32: Memory allocated by CommandLineToArgvW should be that got from LocalAlloc/LocalReAlloc, not from GlobalAlloc.
467       crypt32: Fix function declaration - WINAPI should come after the return type.
468       widl: Remove unused headers.
469       widl: Guard the inclusion of unistd.h.
470       comctl32: Fix the character count passed into LoadStringW from propsheet functions.
471       comctl32: Remove a useless assert from TREEVIEW_GetItemIndex.
472       comctl32: Fix the character count passed to GetWindowTextW in TREEVIEW_Command.
473       comctl32: Remove some more useless asserts.
474       shell32: Fix the character count passed into LoadStringW in ISFHelper_fnAddFolder.
475       shell32: Fix character count passed into lstrcpnA in SHGetDataFromIDListA.
476       urlmon: Fix the character count passed into MultiByteToWideChar in HttpProtocol_Start.
477       wininet: Fix an off-by-one error in the boundary checks in HTTP_DecodeBase64.
478       wininet: Fix the return value check of SHGetSpecialFolderPathW in URLCacheContainers_CreateDefaults.
479       urlmon: Check the return value of ReadFile and return INET_E_DOWNLOAD_FAILURE is it fails.
480       Don't use GetExceptionCode and GetExceptionInformation in exception filter functions.
481       user32: Fix MonitorFromRect to cope with the absence of the MONITOR_DEFAULTTONEAREST flag.
482       Add a new convenience macro for an exception handler that handles all exceptions.
483       include: Fix the C_ASSERT macro to not generate an unused variable warning when compiling with gcc.
484       cabinet: Replace strcasecmp call with lstrcmpiA as strcasecmp isn't portable and doesn't take into account the current codepage.
485       kernel32: Fix handle leak in start_console_renderer_helper.
486       shell32: Fix incorrect character count passed into RegEnumKeyExW in CreateDesktopEnumList.
487       msi: Fix the character count passed into RegSetValueExA in test_MsiQueryFeatureState.
488       winspool: Fix character count passed to RegQueryValueExW in get_local_monitors.
489       advapi32: Add tests for RegSetValueA/W.
490       advapi32: Document that the cbData parameter of RegSetValueA/W is ignored.
491       advapi32: Add tests for the off-by-one fixing behaviour of RegSetValueExA and RegSetValueExW.
492       shell32: Fix the logic in Control_LoadApplet determining when to use CPL_INQUIRE and when to use CPL_NEWINQUIRE.
493       wininet: Fix potential buffer overrun in HttpQueryInfoA.
494       browseui: Fix typo in declaration of empty_string in set_buffer.
495       comdlg32: Fix potential buffer overrun of lpxx->lfFaceName in CFn_WMCommand.
496       comdlg32: Fix the character length passed into GetDlgItemTextW in PRINTDLG_PS_UpdateDlgStructW.
497       advapi32: Fix the AccessCheck tests so that the ACCESS_SYSTEM_SECURITY test now runs (when the user has the Security privilege).
498       mciwave: Fix the character count passed to GetTempPathW in create_tmp_file.
499       msi: Remove some unused functions.
500       advpack: Fix buffer overrun in convert_file_list.
501       Add the nounistd option to all lex source files.
502       avifil32: Simplify a comparison in AVIBuildFilterW.
503       d3d9: Fix copy and paste error in reset_enum_callback.
504       shdocvw: The WINAPI modifier on function pointers should become before the '*' for portability.
505       ntdll: Fix the use of oldSize in RtlReAllocateHeap as both the size of the old block and the number of bytes used in the old block.
506       ntdll: When using HEAP_ZERO_MEMORY in heap allocation functions, don't clear the whole block.
507       include: Include excpt.h from wine/exception.h.
508       dbghelp: VARIANT unions are accessed by name in msc.c so define NONAMELESSUNION.
509       dbghelp: Fix read beyond end of field in module_get_debug.
510       dplayx: Fix incorrect check in DirectPlay3AImpl_EnumConnections.
511       dplayx: Fix incorrect check in DirectPlayLobbyAImpl_EnumLocalApplications and IDirectPlayLobbyAImpl_EnumAddressTypes.
512       Revert "winspool: Fix character count passed to RegQueryValueExW in get_local_monitors".
513       winspool: Fix the character count passed into RegEnumKeyExW in get_local_monitors.
514       gdi32: Optimise StretchBlt for the case where no stretching is being done and the whole image is being set.
515       winex11.drv: Optimise getting the bits of a DIB after calling SetDIBits.
517 Roderick Colenbrander (17):
518       wined3d: Add read_from_framebuffer_texture which combines code from read_from_framebuffer (drawpixels) and LoadLocation.
519       wined3d: Add SURFACE_BUSY support to *_Blt.
520       wined3d: Add SURFACE_BUSY support to *_BltFast.
521       wined3d: Add separate alpha blend support.
522       gdi32: GetPaletteEntries should not filter peFlags (test included).
523       wined3d: When DDCAPS_ALLOW256 is set, palette entry 0 and 255 are filled with black and white.
524       wined3d: Add a GDI version of RealizePalette.
525       wined3d: Add a GL specific RealizePalette which also updates the drawable.
526       wined3d: The base RealizePalette isn't needed anymore.
527       wined3d: Fix lack of indent in PreLoad.
528       wined3d: Let flush_to_framebuffer_drawpixels use a valid rect.
529       wined3d: Don't flush in GDI RealizePalette without a palette.
530       wined3d: Don't flush in D3D RealizePalette without a palette.
531       wined3d: In DirectDraw a palette is a property of a surface while in d3d8/9 it is a property of a device.
532       wined3d: Unify p8 render target detection code.
533       wined3d: Use the color key in glAlphaFunc in case of index_in_alpha.
534       ddraw: Add yv12 detection support.
536 Roy Shea (3):
537       qmgr: Implement DLL server registration.
538       qmgr: Add ServiceMain.
539       qmgr: Add some tests.
541 Royal Chan (1):
542       gdiplus: draw_polyline never sets status from GenericError to Ok on successful calls.
544 Stefan Dösinger (12):
545       wined3d: Add a test for the vFace register.
546       wined3d: Switch the visual tests back to D3DDEVTYPE_HAL.
547       wined3d: Extend out anti-spam database a bit.
548       wined3d: Do not change the texture unit when binding surfaces.
549       wined3d: Add a test for fixed function bump mapping.
550       wined3d: Fix a syntax error in the ARB vertex program offset shader.
551       wined3d: Detect and work around the MacOS Geforce 8 PBO brokeness.
552       wined3d: Create a VBO before returning memory.
553       wined3d: Enable the texcoord init workaround on radeon HD cards on MacOS.
554       d3d9: Add a stencil+culling test.
555       d3d9: Do not expect consistent failures.
556       d3d9: Some Windows drivers do not like reversed fog.
558 Stefan Leichter (2):
559       user32: Add some tests for GetMouseMovePointsEx.
560       user32: Fix a test of GetMouseMovePointsEx failing on platforms winxp and win2k3.
562 Steven Edwards (1):
563       quartz: Bump the amount of time in the referenceclock test slightly.
565 Tony Wasserka (9):
566       d3dx9: Start implementation of d3dx9_24.
567       d3dx9: Start implementation of d3dx9_25.
568       d3dx9: Start implementation of d3dx9_26 and d3dx9_27.
569       d3dx9: Start implementation of d3dx9_28, d3dx9_29 and d3dx9_30.
570       d3dx9: Start implementation of d3dx9_31.
571       d3dx9: Start implementation of d3dx9_32, d3dx9_33, d3dx9_34 and d3dx9_35.
572       d3dx9.h: Include d3dx9math.h before d3dx9core.h.
573       d3dx9: Complete d3dx9core.h.
574       d3dx9: Implement D3DXGetDriverLevel.
576 Vitaliy Margolen (3):
577       dinput: Skip old mouse movement events.
578       Revert "dinput: Skip old mouse movement events.".
579       dinput: Don't use event times, report current tick count instead.
582 Alexandre Julliard
583 julliard@winehq.org