Release 0.9.26.
[wine] / ANNOUNCE
1 This is release 0.9.26 of Wine, a free implementation of Windows on Unix.
2
3 What's new in this release:
4   - Better support for Unix locale settings.
5   - Improved X11 keyboard support.
6   - Various MSI fixes.
7   - Winecfg improvements.
8   - Lots of bug fixes.
9
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:
13
14   http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.26.tar.bz2
15   http://prdownloads.sourceforge.net/wine/wine-0.9.26.tar.bz2
16
17 Binary packages for various distributions will be available from:
18
19   http://www.winehq.org/site/download
20
21 You will find documentation on
22
23   http://www.winehq.org/site/documentation
24
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.
28
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
31
32 Wine is available thanks to the work of many people. See the file
33 AUTHORS in the distribution for the complete list.
34
35 ----------------------------------------------------------------
36
37 Changes since 0.9.25:
38
39 Alex Villacís Lasso (1):
40       kernel32: Restore C locale for LC_NUMERIC.
41
42 Alexander Nicolaysen Sørnes (3):
43       Updated Norwegian Bokmål translations.
44       regedit: Updated Norwegian Bokmål translation.
45       wineconsole: Updated Norwegian Bokmål translation.
46
47 Alexandre Julliard (30):
48       server: Fix list corruption caused by previous change.
49       kernel32: Use LC_NUMERIC instead of LC_ALL to determine the user locale.
50       ntdll: Added support for reading directories using the BSD getdirentries function.
51       winex11.drv: Update the X11 window position when the primary monitor origin changes.
52       shell32: Don't use the short path name to delete files in SHFileOperation.
53       msvcrt/tests: Clean up a temp file.
54       kernel32/tests: Reserve some more memory for the environment.
55       Revert "comctl32: Fix a potential regression in ImageList_ReplaceIcon()."
56       user32: Renamed the user/ directory to user32.
57       kernel32: Rewrote the locale matching to match more elements and to support Windows-format locale names.
58       kernel32: Added the locale name entry to all locale definitions.
59       kernel32: Use the appropriate Unix locale for GetLocaleInfo when a default LCID is used.
60       d3d9: Include wingdi.h, not gdi.h.
61       gdi32: Avoid accessing the internal palette object from dib.c.
62       gdi32: Moved the system palette flags to winex11.drv.
63       winex11.drv: Avoid some direct accesses to the PALETTEOBJ structure.
64       winex11.drv: Abstract accesses to the palette color mapping.
65       gdi32: Get rid of the palette mapping handling and leave it up to the driver.
66       winex11.drv: Store the palette mapping in an X context instead of the GDI object.
67       gdi32: Stop exporting GDI_GetObjPtr and GDI_ReleaseObj.
68       gdi32: Get rid of the gdi.h include.
69       include: Get rid of heap.h.
70       include: Install adshlp.h too.
71       winmm: Avoid using sizeof() in traces.
72       server: Return an fd type in the get_handle_fd request.
73       ntdll: Store the fd type in the cache and return it in server_get_unix_fd.
74       ntdll: Don't bother with async I/O on regular files.
75       winecfg: Don't try to load the arts driver, the arts library is too buggy.
76       comctl32: Remove invalid NULL check.
77       ntdll: Setting the needs_close flag in server_get_unix_fd got lost in the previous change.
78
79 Andrew Talbot (23):
80       qcap: Cast-qual warnings fix.
81       quartz: Cast-qual warnings fix.
82       rpcrt4: Cast-qual warnings fix.
83       rpcrt4: Cast-qual warnings fix.
84       advapi32: Constify a parameter.
85       rsaenh: Cast-qual warning fix.
86       secur32: Cast-qual warning fix.
87       setupapi: Cast-qual warning fix.
88       shell32: Cast-qual warnings fix.
89       shell32: Cast-qual warnings fix.
90       shlwapi: Cast-qual warnings fix.
91       shlwapi: Cast-qual warnings fix.
92       urlmon: Cast-qual warnings fix.
93       user32: Cast-qual warnings fix.
94       user32: Cast-qual warnings fix.
95       user32: Cast-qual warnings fix.
96       user32: Cast-qual warnings fix.
97       wininet: Cast-qual warnings fix.
98       winmm: Cast-qual warnings fix.
99       winmm: Cast-qual warnings fix.
100       winspool.drv: Cast-qual warning fix + make function static.
101       ws2_32: Cast-qual warnings fix.
102       winmm/wineoss: Cast-qual warning fix.
103
104 Andrey Turkin (11):
105       alt: Host component implementation: IOleClientSite.
106       atl: Implement AtlAxAttachControl.
107       atl: Host component implementation: IOleContainer.
108       atl: Host component implementation: IOleInPlaceSiteWindowless.
109       atl: Host component implementation: IOleInPlaceFrame.
110       atl: Host component implementation: IOleControlSite.
111       atl: AtlAxGetHost and AtlAxGetControl implementation.
112       atl: Fix incorrect prototypes.
113       atl: Implement AtlModuleLoadTypeLib.
114       atl: Implement AtlRegisterLoadTypeLib.
115       atl: Implement AtlModuleRegisterServer.
116
117 Byeong-Sik Jeon (1):
118       user32: Update the edit control when the IME composition string is emptied.
119
120 Christoph Frick (1):
121       dinput: Simplify the code that finds the offset of the given linux event.
122
123 Clinton Stimpson (1):
124       riched20: Fix key handling in dialogs.
125
126 Detlef Riekenberg (8):
127       localspl: Implement ConfigurePort.
128       localspl: Replace number with a defined value (static buffer size).
129       localspl/tests: Add test for ConfigurePortW.
130       shell32: Fix a function name in a comment.
131       kernel32/tests: Load tests on Win9x again (VirtualAllocEx+VirtualFreeEx).
132       kernel32/tests: Avoid crash on Win95 (GetLongPathNameW).
133       localspl: Implement DeletePort.
134       localspl/tests: Add test for DeletePort.
135
136 Dmitry Timoshkov (8):
137       ntdll: Alphabetically sort the Makefile entries.
138       user: Set DDE errors in some failing cases.
139       user: Use DDE critical section exclusively for instance list protection.
140       kernel32: Add a basic PE loader test.
141       user32: Add some optional messages to the button message test.
142       user32: Add support for DdeEnableCallback(EC_DISABLE) command.
143       user32: Add a rudimentary WM_SETFONT message test for the static control, make it pass under Wine.
144       user32: Restore the len == 0 check which got lost in a previous patch.
145
146 Eric Pouech (1):
147       ntdll: Fixed returned status for NtQueryThreadInformation's ThreadDescriptorTable
148
149 Francois Gouget (26):
150       kernel32: Fix the 'MAP_FOLDCZONE' ok() test.
151       user: Only perform the screen resolution changing tests in interactive mode.
152       include/tapi.h: Add missing include directives.
153       ole32/tests: Don't use the NONAMELESS* macros in the tests.
154       msi: assert.h is not a local header (spotted by winapi_check).
155       shell32: Fix inclusion of conditional headers (spotted by winapi_check).
156       rpcrt4: Add some stub documentation headers to make winapi_check happy.
157       winex11.drv: Fix some comments so they are properly formatted documentation headers.
158       ole32: Standardize some documentation comments.
159       Add some documentation headers to make winapi_check happy.
160       Assorted spelling fixes.
161       shell32: Remove unused parameters from SHELL_FindExecutableByOperation().
162       comctl32/tests: Don't use the NONAMELESS* macros in the tests.
163       dinput/tests: Remove unneeded NONAMELESS* macros.
164       dsound/tests: Remove unneeded NONAMELESS* macros.
165       mapi32/tests: Remove unneeded NONAMELESS* macros.
166       shell32/tests: Don't use the NONAMELESS* macros in the tests.
167       shlwapi/tests: Remove unneeded NONAMELESS* macros.
168       comctl32/tests: Fix the CheckDPA() tests.
169       msvcrt/tests: The tests must not include msvcrt.h because it contains declarations that may be incompatible with the PSDK headers.
170       user32/tests: Remove unneeded NONAMELESS* macros.
171       Replace SUBLANG_DEFAULT with the specific SUBLANG_XXX constant for languages that have multiple sublanguages.
172       programs: Update the Portuguese translation (contributed by Americo Jose Melo).
173       serialui: Update the Portuguese translation (contributed by Americo Jose Melo).
174       comdlg32: Moved a FIXME out of the user-visible string.
175       msvcrt/tests: We cannot link with _initterm() with Visual C++, so we have to load it dynamically.
176
177 H. Verbeet (10):
178       winex11.drv: The y coordinate should be offset agaist the height, not the width.
179       wined3d: Rename renderUpsideDown to render_offscreen.
180       wined3d: Fix depth buffer formats to use actual depth textures.
181       wined3d: Make the offscreen render mode a registry setting.
182       wined3d: Add FBO support for offscreen rendering.
183       wined3d: Allow the depth buffer to be shared between onscreen and offscreen rendering modes.
184       wined3d: Fix GL_ARB_texture_cube_map extension support.
185       wined3d: Support cube map FBO attachments.
186       wined3d: Make sure render target textures aren't bound when we start drawing.
187       wined3d: Only copy the depth buffer if there is one.
188
189 Hans Leidekker (6):
190       shlwapi: UrlEscapeA should fail with E_POINTER when querying the buffer size.
191       setupapi: The inf section suffix that corresponds to __x86_64 is .ntamd64.
192       setupapi: Implement SetupGetSourceFileLocation{A,W}.
193       setupapi: Implement SetupGetSourceInfo{A,W}.
194       setupapi: Implement SetupGetTargetPath{A,W}.
195       setupapi: Add tests for SetupGet{SourceFileLocation, SourceInfo, TargetPath}.
196
197 Huw Davies (10):
198       msxml3: Add a guard around DOMNodeType just like in the PSDK, so that we can include version 2 and version 3 msxml headers simultaneously.
199       msxml3: Initialize the uuids that aren't in libuuid.
200       msxml3: Add the CLSID_DOMDocument define in msxml2.idl to match the PSDK.
201       msxml3: Support both v 2.x and 3.0 version independent clsids as well as the v 3.0 version dependent clsid.
202       ole32: CoRegisterMessageFilter shouldn't crash on an uninitialized apartment.
203       msxml3: Implement createProcessingInstruction with a stub PI object.
204       msxml3: Implement createElement.
205       comctl32: Set the result to IDOK on 'Finish'.
206       ole32: CoGetInterfaceAndReleaseStream shouldn't crash when passed a NULL stream.
207       ole32: Spelling fixes.
208
209 Hwang YunSong(황윤성) (2):
210       shdoclc: Updated Korean resource.
211       winecfg: Update Korean resource.
212
213 Jacek Caban (16):
214       shdoclc: Added shdoclc.dll.
215       mshtml: Remove menus that are in shdoclc.dll.
216       mshtml: Added IDM_INDENT and IDM_OUTDENT implementation.
217       mshtml: Added IDM_HORIZONTALLINE implementation.
218       mshtml: Added IDM_UNORDERLIST implementation.
219       mshtml: Added IDM_ORDERLIST implementation.
220       mshtml: Added border implementation.
221       mshtml: Added get_style implementation.
222       mshtml: Store nsIDOMCSSStyleDeclaration in HTMLStyle.
223       mshtml: Added put_fontFamily implementation.
224       mshtml: Added put_backgroundColor implementation.
225       mshtml: Added put_fontSize implementation.
226       mshtml: Added semi-stub createStyleSheet implementation.
227       mshtml: Remove nscstring and nscwstring typedefs.
228       mshtml: Added missing break.
229       mshtml: Added Exec(IDM_FONTSIZE) implementation.
230
231 James Hawkins (3):
232       msi: Fix a heap corruption bug by resizing the src string before adding to it.
233       msi: Notify the external UI handler when changing media.
234       kernel32: Replace magic numbers with descriptive defines.
235
236 Jesse Allen (3):
237       msvcrt: Free correct buffer in pf_vsnprintf.
238       msvcrt: Estimate required buffer size better in pf_vsnprintf.
239       msvcrt: printf buffer overrun tests.
240
241 Kai Blin (1):
242       secur32: Fix handling of ISC_REQ* flags in InitializeSecurityContext.
243
244 Ken Thomases (7):
245       winex11.drv: Reset the keyc2vkey table to empty before rebuilding it.
246       winex11.drv: Track which vkeys have already been assigned to keycodes.
247       winex11.drv: Replace no-longer-existent VK_A, VK_Z, VK_0, and VK_9 constants.
248       winex11.drv: Move some dead code from inside a loop to just after the loop.
249       winex11.drv: Changed indenting of some dead code.
250       winex11.drv: Enable code for picking layout-independent vkey as second pass.
251       winex11.drv: Correct the count of characters matching with layout.
252
253 Kevin Koltzau (3):
254       winnt.h: Add defines for new DLL characteristics.
255       winnt.h: Add AMD64 relocation types.
256       winedump: Print new DLL characteristics.
257
258 Kirill K. Smirnov (3):
259       winhelp: Do not create popup window if file not found.
260       winhelp: Fix WINHELP_DeleteWindow.
261       winhelp: Use path of parent helpfile while looking for popup window.
262
263 Kovács András (1):
264       mshtml: HTMLElementCollection_item implementation.
265
266 Louis Lenders (3):
267       shell32: Define a few more icon resources.
268       msvcrt: Add _fstat64 and _stat64 to msvcrt.spec.
269       wine.inf: Add setupapi to fake dlls.
270
271 Marcus Meissner (5):
272       kernel32: Added missing shift by 8.
273       ntdll: Converted bitmask into TRUE/FALSE.
274       shell32: Pass number of wide chars, not bytes as last argument to MBtoWC().
275       kernel32/tests: Test -1 length for NULL ptr too.
276       oleaut32: Protect against integer overflow in SysAllocStringLen.
277
278 Markus Amsler (14):
279       d3d8: Back buffer is identical to the render target, test it only once.
280       d3d8: Test refcount forwarding.
281       d3d8: Test AddRef with refcount==0.
282       d3d8: Show that the implicit surfaces are not freed if refcount reaches 0.
283       d3d9: Forward port d3d8 refcount tests.
284       d3d: Remove AddRef from IWineD3DDevice_GetDirect3D.
285       d3d: Remove AddRef from IWineD3DDevice_GetBackBuffer.
286       d3d: Remove AddRef from IWineD3DDevice_GetRenderTarget.
287       d3d: Remove AddRef from IWineD3DDevice_GetDepthStencilSurface.
288       d3d: Remove AddRef from IWineD3DDevice_GetTexture.
289       d3d: Remove AddRef from IWineD3DDevice_GetStreamSource.
290       d3d: Remove AddRef from IWineD3DDevice_GetIndices.
291       d3d: Remove AddRef from IWineD3DDevice_GetSwapChain.
292       d3d: Fix partially applied patch: Remove AddRef from GetDirect3D.
293
294 Matthew Kehrer (1):
295       mshtml: Add basic support for ITimer interface.
296
297 Michael Stefaniuc (4):
298       dsound: Fix the declaration/definition of DSOUND_timer().
299       dsound: Win64 printf format warning fixes.
300       winmm/tests: Fix the parameters of LPTIMECALLBACK functions.
301       winmm/tests: Win64 printf format warning fixes.
302
303 Mike McCormack (43):
304       msi: Clean upstore_binary_to_temp.
305       msi: Fix an uninitialized variable in the test cases.
306       msi: Fail if we can't write out a temporary file.
307       msi: Track temp files as soon as they are created.
308       msi: Fix error handling.
309       msi: Only free a string in one place.
310       kernel32: Print a FIXME only once.
311       user32: Print a fixme only once.
312       comctl32: When removing an image, move the remaining images one forward, not one backwards.
313       comctl32: Fix a potential regression in ImageList_ReplaceIcon().
314       comctl32: Remove a redundant variable.
315       msi: Print a message if we fail to delete a file.
316       msi: Always delete temp files after creating them.
317       msi: Remove track_tempfile()'s unused 2nd parameter.
318       msi: Defer package deletion until after the database is closed.
319       msi: Delete the tempfile created by GetTempFileName.
320       msi: Split MSI_CreatePackage into two functions.
321       kernel32: Downgrade a FIXME to a WARN.
322       oleaut32: Remove incorrect references to malloc.
323       msi: Remove some redundant else statements.
324       msi: Add a test showing which tables are special.
325       msi: Add a test showing the _Properties table is a bit strange.
326       msi: Remove a level of indent in resolve_folder().
327       msi: Remove unnecessary includes.
328       msi: Fix a memory leak in load_folder().
329       msi: Don't leak row handles.
330       msi: Fix some memory leaks.
331       msi: Clean up parameters of msi_media_get_disk_info().
332       msi: Add another test for the SourceDir property.
333       msi: Spelling fixes.
334       msi: Split msi_set_sourcedir_props into a separate function.
335       msi: Fix an access after freeing memory.
336       msi: Create a function to free control data.
337       msi: Don't access the list of controls after the dialog is destroyed.
338       msi: Add a test for formatting records with strings.
339       msi: Test MsiRecordGetString on an integer record fields with a NULL output buffer.
340       msi: Fix use of integer fields in MsiFormatRecord.
341       riched20: Simplify an array size calculation.
342       msi: Remove an unused parameter.
343       msi: Split process_action_return_value into two different functions.
344       msi: Only wait for custom actions that don't have msidbCustomActionTypeContinue specified.
345       msi: Load all folders in one query, rather one per query.
346       msi: Treat the SourceDir folder the same as TargetDir.
347
348 Paul Vriens (10):
349       msi: Fix typo's (Coverity).
350       rsaenh: Move type-check before len-check (Coverity).
351       comdlg32: Remove unused variable (Coverity).
352       comctl32: Remove deadcode (Coverity).
353       ntdll: Remove tests that crash on XP and W2K3.
354       ntdll: Remove unused variables.
355       ntdll: Remove tests that crash on XP and W2K3.
356       ntdll: Use intended variable.
357       ntdll: Remove unused variables.
358       advpack: Remove test that crashes on systems with IE7.
359
360 Rob Shearman (13):
361       rpcrt4: Fix a comment and move a WARN to where it really indicates a problem, rather than falsely triggering on normal conditions.
362       rpcrt4: Convert the server interfaces list into a standard Wine list.
363       rpcrt4: Implement RpcServerUnregisterIf.
364       ole32: Re-enable the code that unregisters interfaces with the RPC runtime.
365       include: Fix a typo in the SecInvalidateHandle macro in sspi.h.
366       include: Add wincred.h header file.
367       rpcrt4: Add a FIXME for unsupported client protocol sequences.
368       rpcrt4: Fix a crash in RPCRT4_OpenBinding that can occur if
369       rpcrt4: Add support for signing, verifying, encrypting and decrypting RPC packets.
370       rpcrt4: Use SecInvalidateHandle and SecIsValidHandle for handling RpcConnection::ctx instead of setting/comparing the field to 0.
371       include: Add security QOS flags to winbase.h.
372       rpcrt4: Allow applications to specify authentication levels other than connect in RpcBindingSetAuthInfoA/W.
373       rpcrt4: RPC_C_AUTHN_LEVEL_NONE and RPC_C_AUTHN_LEVEL_DEFAULT are
374
375 Roderick Colenbrander (1):
376       wgl: Fix a typo in the pbuffer pixelformat enumeration code.
377
378 Sam Dennis (1):
379       msvcrt: Use the custom vsnprintf implementation for msvcrt.vsprintf too.
380
381 Stefan Dösinger (1):
382       wined3d: Fix a comment.
383
384 Vitaliy Margolen (6):
385       winecfg: Allow editing of broken drive links.
386       winecfg: Move controls on "Desktop Integration" tab to make more room for the next patch.
387       winecfg: Add ability to change colors and non-client sizes.
388       winecfg: Update Russian translation.
389       winecfg: Remove some old dead code and associated language resources.
390       winemenubuilder: Use 'start.exe' to launch non .exe files.
391
392 --
393 Alexandre Julliard
394 julliard@winehq.org