msi: Return ERROR_UNKNOWN_PATCH if dwOptions contains MSICODE_PATCH.
[wine.git] / ANNOUNCE
blobc87ab7a5ff5df54dc22d3aab8a2b799322df54db
1 This is release 0.9.55 of Wine, a free implementation of Windows on Unix.
3 What's new in this release:
4   - Direct3D improvements, including driver version emulation.
5   - Beginnings of support for OLE objects in Richedit.
6   - Several fixes to the animation control.
7   - A bunch of fixes for regression test failures.
8   - Lots of bug fixes.
10 Because of lags created by using mirrors, this message may reach you
11 before the release is available at the public sites. The sources will
12 be available from the following locations:
14   http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.55.tar.bz2
15   http://prdownloads.sourceforge.net/wine/wine-0.9.55.tar.bz2
17 Binary packages for various distributions will be available from:
19   http://www.winehq.org/site/download
21 You will find documentation on
23   http://www.winehq.org/site/documentation
25 You can also get the current source directly from the git or CVS
26 repositories. Check respectively http://www.winehq.org/site/git or
27 http://www.winehq.org/site/cvs for details.
29 If you fix something, please submit a patch; instructions on how to do
30 this can be found at http://www.winehq.org/site/sending_patches
32 Wine is available thanks to the work of many people. See the file
33 AUTHORS in the distribution for the complete list.
35 ----------------------------------------------------------------
37 Changes since 0.9.54:
39 Alexander Nicolaysen Sørnes (1):
40       shell32: Use LocalFree in CommandLineToArgvW.
42 Alexandre Julliard (18):
43       winex11: Abstract the depth->bpp conversion and use it in X11DRV_DIB_CreateDIBFromPixmap.
44       winex11: Remove unneeded check on bitmap depth, screen bpp cannot be 15.
45       shell32: Fix permissions of newly-created directories.
46       gdi32: Avoid locking in CreateCompatibleBitmap.
47       gdi32: Get rid of a few more uses of DC_GetDCPtr.
48       gdi32: Don't hold the GDI lock when calling DC_InitDC.
49       gdi32: Avoid locking in BITMAP_CopyBitmap.
50       gdi32: Use a separate critical section for freetype locking instead of relying on the GDI lock.
51       gdi32: Get rid of DC_GetDCPtr in font functions.
52       gdi32: Get rid of DC_GetDCPtr in the GDI object functions.
53       winex11: Add a critical section for the palette global variables instead of relying on the GDI lock.
54       gdi32: Get rid of DC_GetDCPtr in the palette functions.
55       gdi32: DC_GetDCPtr and DC_ReleaseDCPtr are not longer used.
56       winex11: Don't erase the desktop window synchronously on resizes to prevent deadlocks.
57       winex11: Use the gdi display when initializing the keyboard to avoid creating a second display connection.
58       winex11: Only update the virtual screen rect once in xinerama_init to minimize race conditions.
59       tests: Add a helper routine to wait for a child process and propagate its result correctly.
60       localspl: Avoid sizeof in a trace.
62 Alistair Leslie-Hughes (7):
63       msxml3: Validated attribute name.
64       msxml3: Corrected Entity Reference Test.
65       msxml3: Correct createElement return value for an invalid type.
66       kernel32: Add RegisterApplicationRestart stub.
67       gdiplus: Add GdipSetPenMode stub.
68       gdiplus: Add GdipSetStringFormatFlags stub.
69       msxml3: Corrected test text.
71 Andre Wisplinghoff (1):
72       winecfg: Enable add button when choosing lib from combobox (Libraries tabsheet).
74 Andrew Riedi (2):
75       user32: Test destroying the cursor of a parent process.
76       user32: winex11.drv has support for color cursors now.
78 Andrew Talbot (10):
79       winemp3.acm: Remove unneeded casts.
80       wineps.drv: Remove unneeded casts.
81       winex11.drv: Remove unneeded casts.
82       winex11.drv: Remove unneeded casts.
83       wininet: Remove unneeded casts.
84       winmm: Remove unneeded casts.
85       wintab32: Remove unneeded cast.
86       msvfw32: Avoid possible dereference of NULL pointer (Coverity).
87       wnaspi32: Remove unneeded cast.
88       ws2_32: Remove unneeded casts.
90 Andrey Esin (1):
91       cmd: Additions to Russian translation.
93 Aric Stewart (1):
94       gdi32: Child fonts need to be scaled like their parent. With input from Dmitry Timoshkov.
96 Bang Jun-young (4):
97       crypt32: Include wine/port.h for snprintf().
98       user32: Fix EndMenu() to match the PSDK.
99       riched20: Include wine/port.h for vsnprintf().
100       comctl32: Fix invalid syntax.
102 Christopher Harvey (1):
103       winex11: Added WGL_BIND_TO_TEXTURE_DEPTH_NV to ConvertAttribWGLtoGLX.
105 Colin Finck (2):
106       widl: Support Windows paths in dup_basename and make_token.
107       widl: Write the TLB file in binary mode, so the line endings won't be changed.
109 Detlef Riekenberg (7):
110       localspl: Initialize pointers in struct PRINTPROVIDOR.
111       localspl: Implement fpGetPrinterDriverDirectory.
112       winspool: Use the backend for GetPrinterDriverDirectory.
113       gdi32: Add stub for GdiInitSpool and GdiGetSpoolMessage.
114       url: Add a stub for AddMIMEFileTypesPS.
115       localspl: Implement fpAddPrinterDriverEx.
116       winspool: Use the backend for AddPrinterDriverEx.
118 Dmitry Timoshkov (2):
119       kernel32: LOADPARAMS16->showCmd can be NULL, do not crash in that case.
120       kernel32: Separate modifier from charset before detecting the charset codepage.
122 Eric Pouech (27):
123       dbghelp: Return the size of each directory instead of passing a pointer to it.
124       dbghelp: Fixed the suspend count when creating a minidump in the middle of an exception.
125       dbghelp: Removed double assignment of checksum.
126       dbghelp: Store the PE version information in module block.
127       winedbg: Implemented the pXX request in gdb proxy.
128       riched20: Start handling OLE objects inside richedit.
129       riched20: Handle the zoom in OLE objects.
130       riched20: Correctly handle the wrapping when graphics are used.
131       riched20: Invert graphics when they are under the selection.
132       riched20: Support a couple of paragraphs attributes out of RTF stream reading.
133       riched20: Added support for image reading from RTF stream.
134       riched20: Start implementing object reading out RTF stream.
135       riched20: Make use of the size info in REOBJECT if present.
136       dbghelp: Fixed the types we want to load at first.
137       dbghelp: Added missing basic types for booleans and integers.
138       dbghelp: Pass the 'details' flags to _fetch_type so that we can simplify some code around.
139       dbghelp: Fix mixed up return and this type in MFunction V2.
140       dbghelp: Added HRESULT as new basic type (and some doc about basic types ids).
141       dbghelp: Added support for some V3 fields in structure parsing.
142       dbghelp: Added support for register v3 in msc.
143       dbghelp: Added preliminary support for a strange stack variable object.
144       dbghelp: Added support for labels outside functions (and used it in msc parsing).
145       dbghelp: Added basic support for base class information.
146       dbghelp: Extended the internal enumeration information so that we know the underlying integral type.
147       dbghelp: Attempt to cache some basic symbol types for easier and faster code.
148       dbghelp: When sending back information about a global symbol, only demangle the class & field/method name.
149       dbghelp: Disable the S_PUB_FUNC_XXX msc symbols until we know what they do (the first guess is wrong anyway).
151 Francois Gouget (23):
152       shell32/tests: Fix a couple of copy/paste errors.
153       shell32: Add some SLDF_XXX values, EXP_PROPERTYSTORAGE, and EXP_PROPERTYSTORAGE_SIG.
154       user32: Fix a typo in the StretchDIBits stub name.
155       winedump: Use the standard SLDF_XXX flag names instead of inventing new ones. Add the missing flags.
156       winedump: Track unknown lnk flags and dump them.
157       winedump: Dump the raw data when finding an unknown block in an lnk file.
158       winedump: Switch the block dumping code to be block-oriented, rather then flag oriented, so it is resilient to order changes.
159       winedump: Add support for dumping SZ_LINK and SPECIAL_FOLDER data blocks.
160       ddraw/tests: Fix compilation on systems that don't support nameless unions.
161       mapi32: Add an API documentation stub to make winapi_check happy.
162       ntdsapi: Add an API documentation stub to make winapi_check happy.
163       winex11.drv: Add some API documentation stubs to make winapi_check happy.
164       msvcrt: __CxxDetectRethrow() and __CxxQueryExceptionSize() are implemented now so export them.
165       winapi_check: Update win32.api for acledit.dll, ctapi32.dll and inetcomm.dll.
166       winapi_check: Assorted win32.api updates.
167       winapi_check: Update win32.api for d3dx8.dll.
168       d3dx8core.h: Remove some extraneous #include directives.
169       d3dx8: Fix the D3DXMatrixAffineTransformation() prototype.
170       d3dx8: Make d3dx8core.h C++ compatible.
171       d3dx8: Add the d3dx8mesh.h header and move the relevant function declarations there.
172       d3dx8: Fix the D3DXAssembleShaderFromFileA/W() prototypes.
173       comctl32/tests: Call InitCommonControlsEx() if available, fall back to InitCommonControls() for the older controls, and skip the tests altogether for the newer ones.
174       riched20: Fix the name of the lpUsedDefChar field of GETTEXTEX.
176 Gerald Pfeifer (2):
177       d3d9: Fix the type of three loop variables.
178       configure: Use GCC's -Wtype-limits if possible.
180 Hans Leidekker (3):
181       wininet: Make sure not to overwrite any caller supplied authorization header.
182       wininet: Send HTTP/1.1 requests by default.
183       wininet: Add zero value content length header to POST requests only.
185 Jacek Caban (28):
186       urlmon: Added HlinkParseDisplayNameEx implementation.
187       urlmon: Added MkParseDisplayNameEx tests.
188       hlink: Call AddRef of correct interface in ExtServUnk_QueryInterface.
189       hlink.idl: Added more function declarations.
190       hlink: Added HlinkParseDisplayName implementation.
191       hlink: Added HlinkParseDisplayName tests.
192       hlink: Added HlinkResolveMonikerForData implementation.
193       hlink: Added HlinkResolveMonikerForData tests.
194       hlink: Added standard comments.
195       hlink: Don't prefer native version.
196       urlmon: Added comments about missing MIME filters.
197       widl: Ignore ATTR_LOCAL in create_msft_typeinfo.
198       urlmon: Added CopyStgMedium implementation.
199       urlmon: Fixed tests.
200       urlmon: Return better error results.
201       mshtml: Added more about protocol tests.
202       urlmon: Separate buffer from stream object.
203       urlmon: Abstract ProtocolStream object.
204       urlmon: Don't create stgmed_obj for binding to object.
205       urlmon: Added BINDSTATUS_CACHEFILENAMEAVAILABLE support.
206       urlmon: Added support for binding to IID_IUnknown storage (cache file).
207       urlmon: Correctly handle BINDF_NEEDFILE flag in http protocol.
208       urlmon: Added more protocol tests.
209       itss: Added BINDF_NEEDFILE test.
210       urlmon: Added more tests.
211       mshtml: Update wine_url in nsIURI::SetPath.
212       urlmon: Added gecko_installer_workaround to url.c tests.
213       urlmon: Fixed ref count leak.
215 James Hawkins (16):
216       kernel32: Factor out the VerifyVersionInfo tests into their own function.
217       version: Return ERROR_RESOURCE_DATA_NOT_FOUND if the file does not have version information.
218       msi: Add tests for using single quotes in an INSERT query.
219       msi: Implement the MSIMODIFY_ASSIGN action of MsiViewModify for the streams table.
220       msi: Add tests for MsiGetFileVersion.
221       msi: Only convert output strings if the call succeeded.
222       msi: Translate ERROR_BAD_PATHNAME into ERROR_FILE_NOT_FOUND.
223       msi: Return ERROR_INVALID_PARAMETER if a string pointer is non-NULL and the size pointer is NULL.
224       msi: Return ERROR_FILE_INVALID if the file has no version information.
225       msi: Leave room for the NULL terminator.
226       msi: Return the string length even if the string is NULL.
227       msi: Return ERROR_MORE_DATA if the size is too small.
228       msi: Add more tests for MsiFormatRecord.
229       msi: Reimplement MsiFormatRecord.
230       msi: Fix handling of the NULL separator when writing registry values.
231       msi: Test using carriage returns in SQL queries and imported tables.
233 Jens Nestler (1):
234       kernel32: Don't fail unconditionally in MoveFile for directories with flag MOVEFILE_REPLACE_EXISTING.
236 Johan Gardell (1):
237       user32: Added support for SPI_SETMOUSESPEED in SystemParametersInfoW.
239 Juan Lang (1):
240       rsaenh: Merge the encrypting and decrypting states, as encrypting and decrypting are allowed with the same key.
242 Kirill K. Smirnov (2):
243       systray: Properly track errors.
244       systray: Add support for NIS_HIDDEN flag.
246 Lars-Ake Fredlund (1):
247       winex11: Don't create a mapping if X11DRV_PALETTE_VIRTUAL is set.
249 Lei Zhang (3):
250       comctl32: Use wine_dbgstr_rect() in traces.
251       user32: Use wine_dbgstr_rect() in traces.
252       quartz: Add VideoRendererDefault.
254 Marcus Meissner (3):
255       wordpad: Remove condition that never triggers.
256       atl: Check for NULL.
257       pdh: Fixed wrong condition.
259 Michael Stefaniuc (3):
260       user32: Remove duplicated get_hook_proc() function.
261       olecli: Remove duplicated typedefs/enums.
262       msi: Fix "type of 'x' defaults to 'int'" warnings.
264 Paul Chitescu (1):
265       ntoskrnl.exe: Implement MmPageEntireDriver and MmResetDriverPaging.
267 Paul Vriens (4):
268       include/wintrust.h: Add missing members to CRYPT_PROVIDER_DATA struct (fixes some wintrust tests on Windows).
269       wintrust/tests: Use GetModuleHandleA instead of LoadLibraryA.
270       rpcrt4/tests: Change test for Windows 2003.
271       rpcrt4/tests: Skip rest of the tests if we fail.
273 Reece H. Dunn (9):
274       comctl32: Proper fix redrawing the trackbar background with themes enabled.
275       gdiplus: Fix the bezier arc path test on all Windows platforms.
276       msxml3: Fix the domdoc test failures.
277       cabinet: Make the fdi tests pass on Vista.
278       ddraw: Spelling fixes in the d3d test output.
279       gdi32: Improve the failure reporting in the bitmap tests.
280       uxtheme: Fix the system tests so they pass on Vista.
281       comctl32: Vista sends an unidentified message when destroying datetime and monthcal windows.
282       user32: Make the listbox tests pass in directories other than dlls/user32/tests.
284 Rob Shearman (30):
285       secur32: Move the detection of NULL credentials from AcquireCredentialsHandle to InitializeSecurityContext.
286       secur32: If using cached credentials failed in InitializeSecurityContext then fail with SEC_E_NO_CREDENTIALS instead of carrying on with a blank password.
287       secur32: Try to retrive credentials by using the credential manager to retrieve credentials saved for the target server in InitializeContextHandleW, if possible.
288       secur32: Initialise more pointers in helper to NULL.
289       oleaut32: Fix big memory leak in xCall.
290       widl: Don't search for a import file name with a path in the include directories for compatibility with MIDL.
291       widl: Output code for initialising and freeing full pointer translation tables.
292       mapi32: Add a stub implementation of HrQueryAllRows@24.
293       ole32: Add a stub implementation of CreatePointerMoniker.
294       oleaut32: Fix a leak of a typelib object in OLEFontImpl_GetTypeInfo.
295       oleaut32: Fix a memory leak in the olefont tests.
296       rpcrt4: Fix some incorrect checks in RPCRT4_Receive.
297       oleaut32: Fix some reference count leaks in the tmarshal test.
298       oleaut32: Fix a leak of bmi in OLEPictureImpl_LoadGif.
299       comctl32: In certain circumstances, native comctl32's animation control accepts negative start positions for the ACM_PLAY message.
300       advapi32: Fix the size calculation in StartServiceW.
301       wine.inf: Make UI effects default to on.
302       oleaut32: Fix some memory leaks in the safearray tests.
303       ole32: Add tests for CreatePointerMoniker.
304       ole32: Add pointer moniker implementation.
305       wininet: HTTP_Connect should fail if a NULL or empty hostname is passed in.
306       rpcrt4: Fix memory leaks in the rpc tests.
307       comctl32: Get the background colour in ANIMATE_PaintFrame, instead of just in WM_PAINT.
308       ntdll: The FileMailslotSetInformation and FileCompletionInformation cases of NtSetInformationFile don't need the fd.
309       server: Always try return a named pipe server that is listening from find_available_server.
310       ws2_32: Add a FIXME for WS_SIO_GET_EXTENSION_FUNCTION_POINTER in WSAIoctl.
311       rpcrt4: Fix potential memory leaks in RPCRT4_Receive.
312       rpcrt4: Fix potential memory leaks on error paths in RPCRT4_io_thread.
313       comctl32: Don't get the background colour in ANIMATE_PaintFrame as this can be called inside a critical section.
314       comctl32: Move the getting of the DC outside of ANIMATE_DrawFrame.
316 Roderick Colenbrander (5):
317       wined3d: Make sure to set the color key when it is needed including for index_in_alpha.
318       wined3d: Reload the palette on a color key change. This fixes the ddex4/ddex5 samples from the dx7 sdk.
319       wined3d: Allow read back of P8 surfaces. This fixes some of the redrawing issues in Red Alert.
320       wined3d: Redownload the surface data in case of a palette change. This fixes a lot of redrawing problems in Red Alert.
321       wined3d: Upload p8 palette using GL_ALPHA instead of GL_RED.
323 Stefan Dösinger (30):
324       wined3d: Beware of texture_rectangle NP2 support in Reset.
325       wined3d: Update the auto depth stencil buffer size on reset.
326       wined3d: Unload implicit depth stencil buffers correctly.
327       wined3d: Destroy FBOs and reset pointers on Reset.
328       wined3d: Move some UnLoad code to the base texture class.
329       wined3d: Mark textures dirty on UnLoad.
330       wined3d: De-Statify depth blit opengl resources.
331       d3d9: Some drivers allow non-aligned offsets.
332       wined3d: Make Clear aware of the depth stencil sharing.
333       wined3d: Update the gl rectangle when adjusting surface sizes.
334       wined3d: D3DTADDRESS_WRAP on conditional NP2 textures clamps to edge.
335       wined3d: Some texture transform test corrections.
336       d3d9/tests: Be less picky about X8L8V8U8 precision.
337       d3d9/tests: Accept the rejection of non-standard fixed function attrib types.
338       wined3d: Correct the srgb reading check.
339       wined3d: Fix dxtn format check.
340       wined3d: Move the float format check to the big switch statement.
341       wined3d: Move vertex buffer vbo creation to PreLoad.
342       wined3d: Recreate the contexts on _Reset.
343       wined3d: Restore the stateblock after Reset.
344       wined3d: Tear down the dummy textures before resetting.
345       wined3d: Move the highpart of the driver version to the gl structure.
346       wined3d: Separate OpenGL and driver version.
347       wined3d: Create VBOs.
348       ddraw: Some drivers return a refresh rate of 0.
349       wined3d: Add infrastructure for faking driver versions.
350       wined3d: Add some ATI cards to the version database.
351       wined3d: Reject unsupported modes when restting the device.
352       d3d9: Implement the device lost state.
353       wined3d: Restore the Window size on reset.
355 Stefan Leichter (1):
356       advapi32: Fix the failing QueryServiceConfig2 test on platforms win2k3 and vista.
359 Alexandre Julliard
360 julliard@winehq.org