user32: Improve mouse wheel scrolling in listbox control.
[wine.git] / ANNOUNCE
blob2493e4439de65dc14ecec485991ab8fa211528d4
1 The Wine development release 1.5.23 is now available.
3 What's new in this release (see below for details):
4   - HTTPS support no longer dependent on OpenSSL.
5   - Support for event handling in the Mac driver.
6   - A functional Netstat built-in application.
7   - A bunch of C++ runtime math functions.
8   - Various bug fixes.
10 The source is available from the following locations:
12   http://prdownloads.sourceforge.net/wine/wine-1.5.23.tar.bz2
13   http://mirrors.ibiblio.org/wine/source/1.5/wine-1.5.23.tar.bz2
15 Binary packages for various distributions will be available from:
17   http://www.winehq.org/download
19 You will find documentation on http://www.winehq.org/documentation
21 You can also get the current source directly from the git
22 repository. Check http://www.winehq.org/git for details.
24 Wine is available thanks to the work of many people. See the file
25 AUTHORS in the distribution for the complete list.
27 ----------------------------------------------------------------
29 Bugs fixed in 1.5.23 (total 57):
31    7710  QueryPerformanceCounter should be independent of system time
32    9952  Sketch Studio shows corrupt cursor
33   13417  FlashFXP - No mouse support systemwide if window is open
34   16476  Turok crashes when starting a game
35   16689  winefile: array size is smaller than minimum required
36   17226  SimTower crashes on dereferencing 0xffffffff on attempting to save in SimTower
37   17990  Battleships forever video is offset
38   19773  Largo Winch: mostly black screen
39   19796  Galactic Civilizations II: Crash after menu screen
40   19799  Native cscript crashes if you call WScript.Arguments(0).  Breaks Chromium build setup.
41   20889  In Quake 3 Arena Main Menu one mouse click is taken as two
42   21119  realMYST v1.1.1 [ENGLISH] No-CD/Vista Fixed EXE: Page fault and debug err
43   21943  GetCharABCWidthsI does not return correct widths when handling a DC with dc->gdiFont == null
44   22812  mt creates corrupted executables
45   23121  Iometer 2006.07.27 displays error messages on start (dogfood)
46   23215  4x4 Evo 2: Pagefault on second launch of game
47   23414  Text is italicized in Mozilla Firefox 3.6.6
48   23501  ATEN KVM WinClient did not start
49   25010  radmin fast search halfworking.
50   25082  radmin: right mouse key drag'n'drop not working
51   25222  Football Manager 2011 fails to load with 3d enabled
52   25599  Editing Word 2000 drawing object does not work
53   26530  Frogger: 3D models not rendering correctly/Only shadows
54   27991  LsaLookupNames2 separate allocations break .NET 4.0 System.Security subsystem and leak returned buffer data
55   28343  UFO: Extraterrestrials Gold - crash at start unless native d3dx9_26 (or d3dx_36) is used
56   28530  Asami Sushi Shop hangs when switching to windowed mode
57   28666  Spa Mania: Read from NULL when toggling fullscreen mode
58   29822  winebuild should use Clang to assemble if Clang is used to compile
59   29936  Java Quick Starter service chews CPU
60   30119  ThunderMini crash after a while.
61   30514  RonyaSoft Poster Designer (Poster Forge) 2.x installer crashes during installation of fonts due to unimplemented function gdi32.dll.GetFontResourceInfoW
62   31280  Right-clicking a listview in a dotnet application doesn't open the context menu
63   31343  Steam: Steam is significantly slower in 1.5.x
64   32123  Outlook 2010 crashes in versions newer than 1.5.14
65   32404  Ocean Dive demo launcher shows garbage when window loses focus
66   32504  QQPCDetector.exe from installer of QQMusic 2012 beta2 crashes
67   32564  Visual Studio 2010 (10.0) Express Edition needs atl100.dll.AtlAxDialogBoxW
68   32706  No sound with foobar2000: Unknown error code (0x80070057)
69   32718  Crash on call to SHELL32.dll.709 (SHGetSetFolderCustomSettings)
70   32739  TDXW crashes when the window is resized
71   32744  Batman: Arkham Asylum Demo "err:wbemprox:wql_error syntax error, unexpected $end, expecting TK_ID"
72   32746  TurboTax 2012 installer fails
73   32750  Batman: Arkham Asylum Demo wants wbemprox:class_object_GetPropertyQualifierSet
74   32763  Regression in wbemprox - rFactor 2 launcher - Unhandled page fault
75   32764  STEP7_Lite_V30_incl_SP4 installation crashed
76   32776  Crashes in Legacy 5 resulting in its database being corrupted
77   32779  RegOpenKeyExA fails on 64bit wine when build with lazarus (fpc 2.6 - 64bit)
78   32788  Batman: Arkham Asylum Demo - GetObject gets an empty string
79   32799  err:d3d:check_fbo_compat
80   32806  Freight Tycoon crashes while loading to the menu (with built-in msvcr71)
81   32807  installer of PPTV: needs unimplemented atl100.dll.AtlGetPerUserRegistration
82   32812  Hard Truck Apocalypse crashes on start with built-in msvcp71
83   32819  Max Payne 1 crashes when loading certain level
84   32824  Dota 2 graphics missing without texture copy in check_fbo_compat()
85   32840  Mouse input regression caused by changes in GetTickCount64
86   32847  Microsoft Expression Design 4 (Free Version) installer needs windowscodecs IcoFrameDecode_GetThumbnail impl
87   32853  Microsoft Expression Design 4 (Free Version) installer fails while trying to check for msi.dll file version (MsiGetFileVersion)
89 ----------------------------------------------------------------
91 Changes since 1.5.22:
93 Alex Henrie (1):
94       advapi32: Destination length -1 means no limit.
96 Alexandre Julliard (20):
97       winapi: Add arm64 architecture.
98       loader: Hardcode Linux syscall numbers.
99       libwine: Hardcode Linux syscall numbers.
100       ntdll: Use the __NR_ names for Linux system calls.
101       server: Use the __NR_ names for Linux system calls.
102       gdi32: Fix copy/paste typo in get_char_positions_indices.
103       winex11: Store the client window in the window data again, now that it can be accessed from all threads.
104       winex11: Handle Expose events on top-level client windows.
105       rpcrt4: Fix wrap-around bug in tick count comparison.
106       ole32: Fix wrap-around bug in tick count comparison.
107       netapi32: Fix wrap-around bug in tick count comparison.
108       wbemprox: Don't rely on GetTicksCount to determine boot time.
109       advapi32/tests: Fix another test failure.
110       ntdll: Use a monotonic time counter to implement NtQueryPerformanceCounter.
111       ntdll: Add support for the monotonic time counter on Mac OS X.
112       ntdll: Use the monotonic counter for NtGetTickCount.
113       kernel32: Use the monotonic counter in GetTickCount64.
114       kernel32: We no longer need the server start time in kernel32.
115       urlmon/tests: Avoid infinite timeouts in tests.
116       server: Use the monotonic time counter also on the server side.
118 Andrew Eikum (2):
119       ieframe/tests: Don't convert to long path name until the file exists.
120       wineoss.drv: Set reasonable defaults if driver reports invalid values.
122 Andrew Talbot (4):
123       gdi32: Avoid signed-unsigned integer comparisons.
124       gdiplus: Avoid signed-unsigned integer comparisons.
125       hhctrl.ocx: Avoid signed-unsigned integer comparisons.
126       gphoto2.ds: Avoid signed-unsigned integer comparisons.
128 André Hentschel (9):
129       include: Fix __int64 definition for ARM64.
130       include: Make sure interlocked_cmpxchg128 is defined on ARM64.
131       ntdll: Implement IMAGE_REL_BASED_THUMB_MOV32 relocation on ARM.
132       netstat: Implement the TCP stats output.
133       netstat: Implement the UDP stats output.
134       configure: Add ARM64 define.
135       dbghelp: Implement rudimentary stack walk for ARM64.
136       dbghelp: Remove useless code in ARM stack walk.
137       include: Add remaining checks for ARM64.
139 Aric Stewart (7):
140       usp10: Group the GDEF table loading with the other opentype tables.
141       usp10: GPOS Mark to Base seeks back in the string to the first glyph that is not a mark for its base.
142       usp10: Add locl and ccmp to Latin features.
143       usp10: Only fall back to latin features if the base script tag is not found at all.
144       usp10: Add ShapeCharGlyphProp_Latin to properly handle zero width character properties for Latin.
145       usp10: Add ShapeCharGlyphProp and ContextualShape for Control characters.
146       usp10: Do not apply SSA_LINK to right to left text.
148 Aurimas Fišeras (1):
149       po: Update Lithuanian translation.
151 Austin English (1):
152       include: Flesh out d3d11.idl.
154 Charles Davis (1):
155       winebuild: Use Clang to assemble if found.
157 Christian Costa (4):
158       d3dx9_36: Fill children info into ID3DXFileData object.
159       dmusic: Add support for loading articulations.
160       d3dx9_36: Implement ID3DXFileData_GetChildren and ID3DXFileData_GetChild.
161       d3dx9_36: Implement ID3DXFileDataImpl_IsReference.
163 Detlef Riekenberg (3):
164       wininet: Fix a test failure on w2k.
165       wininet: Remove most GetLastError tests for IsDomainLegalCookieDomainW.
166       wininet: Don't depend on user settings.
168 Dmitry Timoshkov (4):
169       gdiplus: Make GdipCreateFromHDC2 not fail in case of hDevice != NULL.
170       dwrite: Avoid triggering an exception on DLL_PROCESS_DETACH.
171       gdiplus: Avoid not necessary memory allocation for BITMAPINFO.
172       windowscodecs: Implement GetThumbnail in the ICO frame decoder.
174 Erich Hoover (5):
175       advapi32: Fix intermittent 64-bit test failure.
176       advapi32: Support service objects in SetSecurityInfo.
177       advapi32: Make an internal routine for [Get|Set]SecurityInfo file objects.
178       advapi32: Support service objects in GetNamedSecurityInfo.
179       advapi32: Support service objects in SetNamedSecurityInfo.
181 Francois Gouget (4):
182       winmm/tests: Allow more margin in the test_asyncWAVE() playback check.
183       wined3d: Make device_stream_info_from_declaration() static.
184       wined3d: debug_{d3dbasis, d3ddegree}() are not used anymore so remove them.
185       Assorted spelling fixes.
187 Frédéric Delanoy (1):
188       po: Update French translation.
190 Gerald Pfeifer (1):
191       winex11: Push down variable attrib down in create_gl_drawable.
193 Hans Leidekker (16):
194       msi: Set the OriginalDatabase property after applying transforms, not before.
195       msi: Execute concurrent installers in a separate process.
196       msi: Remove const from integer parameters.
197       wbemprox: Implement Win32_DiskDrive.DeviceId.
198       wbemprox: Add a stub implementation of IWbemQualifierSet.
199       wbemprox: Check the result count instead of the result pointer in get_propval.
200       wbemprox: Implement IWbemQualifierSet::Get.
201       wbemprox: Return an empty object if the path is NULL or empty.
202       wbemprox: Don't fail if there are less objects than asked for in IEnumWbemClassObject::Next.
203       wbemprox: Implement Win32_VideoController.PNPDeviceID.
204       wbemprox: Build a PNP device ID that better matches the graphics card.
205       msi: Avoid a crash in msi_dialog_handle_event.
206       msi: Set _BrowseProperty to INSTALLDIR.
207       msi: Don't fail if the directory already exists in MsiCreateAndVerifyInstallerDirectory.
208       msi: Fix the return value of MsiGetFileVersion for some corner cases.
209       msi: Improve parsing of the supported platforms string.
211 Henri Verbeet (30):
212       ddraw: Avoid LPD3DVERTEXBUFFERDESC.
213       ddraw: Avoid LPD3DDRAWPRIMITIVESTRIDEDDATA.
214       wined3d: Get rid of the select_shader_mode() call in wined3d_get_device_caps().
215       wined3d: Move "ffp_proj_control" to the fragment caps.
216       wined3d: Move "vs_clipping" to the shader caps.
217       d3drm: Avoid LPD3DRECT.
218       d3drm: Avoid LPDDPIXELFORMAT.
219       wined3d: Add sRGB writes to the shader backend and fragment pipe caps.
220       wined3d: Properly set WINED3DFMT_FLAG_SRGB_WRITE in init_format_texture_info().
221       wined3d: Get rid of CheckSrgbReadCapability().
222       d3drm: Avoid LPD3DVALUE.
223       d3drm: Avoid LPD3DVECTOR.
224       wined3d: Get rid of select_shader_mode().
225       wined3d: Properly set WINED3DFMT_FLAG_FILTERING in init_format_texture_info().
226       wined3d: Get rid of CheckFilterCapability().
227       d3drm: Avoid LPD3DRMQUATERNION.
228       d3drm: Avoid LPD3DRMRAY.
229       wined3d: Properly set WINED3DFMT_FLAG_VTF in init_format_texture_info().
230       wined3d: Get rid of CheckPostPixelShaderBlendingCapability().
231       wined3d: Get rid of CheckWrapAndMipCapability().
232       d3drm: Avoid LPD3DRMBOX.
233       d3drm: Avoid LPD3DRMRENDERQUALITY.
234       wined3d: Support all fixups in shader_none_color_fixup_supported().
235       wined3d: Replace "VertexShaderMode" and "PixelShaderMode" with shader model limits.
236       wined3d: Get rid of a superfluous texture copy in check_fbo_compat().
237       d3drm: Avoid LPD3DRMIMAGE.
238       d3drm: Avoid LPD3DRMMATERIALOVERRIDE.
239       wined3d: Introduce a format flag for texturing.
240       wined3d: Get rid of CheckTextureCapability().
241       wined3d: Get rid of CheckBumpMapCapability().
243 Huw Davies (12):
244       riched20: Avoid an unnecessary string duplication.
245       wineps: Use a file mapping to read the ppd file.
246       wineps: Cope with '\r'-only end-of-line markers.
247       riched20: Simplify adding the undo items when joining paragraphs.
248       riched20: Move undo handling to a different set of structs as the display item structs are not a good fit.
249       riched20: Add a paragraph ptr to each run.
250       riched20: Add a helper to debug the run text.
251       riched20: Add a helper to retrieve the run text.
252       riched20: Rewrite the run splittable test to take a run parameter.
253       riched20: Rewrite the run whitespace test to take a run parameter.
254       riched20: Use the get_text helper in a few more places.
255       riched20: Add an explicit run length member and use it rather than accessing the string length.
257 Jacek Caban (41):
258       secur32: Return a cert context with context store in SECPKG_ATTR_REMOTE_CERT_CONTEXT GnuTLS implementation.
259       secur32: Return a cert context with context store in SECPKG_ATTR_REMOTE_CERT_CONTEXT MacOSX implementation.
260       secur32: Added SECPKG_ATTR_REMOTE_CERT_CONTEXT tests.
261       mshtml: Get rid of PTInt64 type.
262       mshtml: Get rid of PRUint8 type.
263       mshtml: Get rid of PRUint16 type.
264       mshtml: Get rid of PRUint32 outside XPCOM C API.
265       mshtml: Get rid of PRUint64 type.
266       winhttp: Test that the data is really read in test_secure_connection.
267       winhttp: Enable more OpenSSL-independent code when OpenSSL is not available.
268       winhttp: Use schannel in netconn_secure_connect if OpenSSL is not available.
269       winhttp: Added schannel-based netconn_recv implementation.
270       winhttp: Added schannel-based netconn_send implementation.
271       winhttp: Added schannel-based netconn_get_certificate implementation.
272       winhttp: Added schannel-based netconn_get_cipher_strength implementation.
273       winhttp: Use schannel for HTTPS connection by defaul and get rid of OpenSSL dependency.
274       vbscript: Added GetObject implementation.
275       vbscript: Added GetObject tests.
276       ieframe/tests: Fixed a race in tests.
277       d3dcompiler.h: Added D3DCOMPILER_DLL macro.
278       atl100: Added AtlGetPerUserRegistration stub implementation.
279       wininet: Moved WORKREQUEST allocation to INTERNET_AsyncCall callers.
280       wininet: Moved WORKREQ_HTTPSENDREQUESTW out of WORKREQUEST.
281       wininet: Moved WORKREQ_INTERNETOPENURLW out of WORKREQUEST.
282       wininet: Moved WORKREQ_HTTPREADFILEEX out of WORKREQUEST.
283       textstor.idl: Added TS_ATTR_FIND_* constants.
284       wininet: Moved WORKREQ_HTTPENDREQUESTW out of WORKREQUEST.
285       wininet: Moved WORKREQ_SENDCALLBACK out of WORKREQUEST.
286       wininet: Moved WORKREQ_FTPPUTFILEW out of WORKREQUEST.
287       wininet: Moved WORKREQ_FTPSETCURRENTDIRECTORYW out of WORKREQUEST.
288       wininet: Moved WORKREQ_FTPCREATEDIRECTORYW out of WORKREQUEST.
289       wininet: Moved WORKREQ_FTPREMOVEDIRECTORYW out of WORKREQUEST.
290       wininet: Moved WORKREQ_FTPGETFILEW out of WORKREQUEST.
291       wininet: Moved WORKREQ_FTPGETCURRENTDIRECTORYW out of WORKREQUEST.
292       wininet: Moved WORKREQ_FTPFINDFIRSTFILEW out of WORKREQUEST.
293       wininet: Moved WORKREQ_FTPOPENFILEW out of WORKREQUEST.
294       wininet: Moved WORKREQ_FTPRENAMEFILEW out of WORKREQUEST.
295       wininet: Moved WORKREQ_FTPFINDNEXTW out of WORKREQUEST.
296       wininet: Moved WORKREQ_FTPDELETEFILEW out of WORKREQUEST.
297       wininet: Get rid of WORKREQ* types.
298       ieframe: Use int resource ID for toolbar image.
300 Jörg Höhle (1):
301       winealsa: Have the MIDI recorder wait in poll(), not snd_seq_event_input().
303 Ken Thomases (14):
304       winemac: Add a simple ERR() logging macro that can be used from Cocoa code.
305       winemac: Add WineEventQueue class for conveying events from Cocoa to Wine threads.
306       winemac: Associate an event queue with each thread that creates windows and with each window.
307       winemac: Make each Mac driver window track the HWND it's associated with.
308       winemac: Implement MsgWaitForMultipleObjectsEx and infrastructure for processing events.
309       winemac: Implement a WINDOW_CLOSE_REQUESTED event to allow closing windows.
310       winemac: Implement WINDOW_FRAME_CHANGED event to tell Wine when window is moved or resized.
311       winemac: Add infrastructure to convert from Cocoa event time to Wine tick count.
312       winemac: Implement a MOUSE_BUTTON event for mouse clicks.
313       winemac: Take control over when a window can become focused away from Cocoa.
314       winemac: Maintain a list of which windows have been "key" (focused) recently.
315       winemac: Implement a WINDOW_GOT_FOCUS event for when Cocoa tries to focus a window.
316       winemac: Implement a WINDOW_LOST_FOCUS event.
317       winemac: Implement an APP_DEACTIVATED event.
319 Ludger Sprenker (6):
320       windowscodecs: Add tests for IPropertyBag2.
321       windowscodecs: Implement ComponentFactory::CreateEncoderPropertyBag.
322       windowscodecs: Implement IPropertyBag2::CountProperties.
323       windowscodecs: Implement IPropertyBag2::GetPropertyInfo.
324       windowscodecs: Implement IPropertyBag2::Write.
325       windowscodecs: Implement IPropertyBag2::Read.
327 Maarten Lankhorst (1):
328       dbghelp: Add support for zlib compressed debug sections.
330 Marcus Meissner (3):
331       dmusic: Actually return the allocated interface (Coverity).
332       msvcrt: read_utf8: free readbuf on return (Coverity).
333       kernel32: Conditional variable tests.
335 Matteo Bruni (1):
336       wined3d: Rebind texture before checking for its content in check_fbo_compat().
338 Michael Stefaniuc (10):
339       ws2_32: Use assignment instead of memcpy to copy structs.
340       d3dx9_36/tests: Use assignment instead of memcpy to copy a struct.
341       dinput: Use assignment instead of memcpy to copy a struct.
342       msvcrt/tests: Use assignment instead of memcpy to copy structs.
343       mscms: Use assignment instead of memcpy to copy structs.
344       crypt32: Use assignment instead of memcpy to copy a struct.
345       itss: Use assignment instead of memcpy to copy a struct.
346       mscoree: Use assignment instead of memcpy to copy a struct.
347       d3dcompiler_43: Use assignment instead of memcpy to copy structs.
348       wined3d: Use assignment instead of memcpy to copy structs.
350 Nikolay Sivov (14):
351       advapi32: Make it possible to free data buffer returned from LsaLookupSids().
352       advapi32: Fix LsaLookupNames2() regarding referenced domain list allocation.
353       xmllite: Add a name stack for elements.
354       xmllite: Handle empty elements and transition to content/misc part, update depth on push.
355       xmllite: Implement end tag parsing.
356       xmllite: Complete content parsing with implemented parts and stubs.
357       user32: Accept BI_BITFIELDS format for icons when creating icons.
358       xmllite: Handle E_PENDING from stream for comment nodes.
359       xmllite: Fail to set input for external IXmlReaderInput.
360       comctl32/listview: Implement dragging with right button with a message loop.
361       comctl32: Use NM_RCLICK return value to allow default processing.
362       comctl32: Test WM_GETDLGCODE return value for TreeView.
363       comctl32/listview: Fix item search with keyboard input.
364       po: Use a shorter string for button.
366 Piotr Caban (26):
367       vbscript: Fixed typo in vbsregexp55.idl.
368       msvcp90: Added complex::real and complex::imag implementation.
369       msvcp90: Added std::abs(complex) implementation.
370       msvcp90: std::_Fabs(complex) tests.
371       msvcp90: Added std::conj(complex) implementation.
372       msvcp90: Added complex trigonometric functions implementation.
373       msvcp90: Added std::tan(complex) tests.
374       msvcp90: Added complex hyperbolic functions implementation.
375       msvcp90: Added std::tanh(complex) tests.
376       msvcp90: Added std::log(complex) and std::exp(complex) implementation.
377       msvcp90: Added std::log10(complex) tests.
378       msvcp90: Added std::norm(complex) and std::polar(complex) implementation.
379       msvcp90: Added std::pow(complex) and std::sqrt(complex) implementation.
380       msvcp90: Added std::sqrt(complex) tests.
381       msvcp: Sync implementations.
382       msvcrt: Ignore S and R flags in fopen.
383       msvcrt: Added N flag support to fopen.
384       msvcrt: Fixed setlocale tests on Win8.
385       msvcrt: Fixed _Gettnames test on Win8.
386       jscript: Fixed a leak in do_regexp_match_next function.
387       jscript: Fixed a leak in regexp_match function.
388       msvcp71: Fixed basic_filebuf class layout.
389       jscript: Update buffer size in do_regexp_match_next.
390       msvcrt: Don't call invalid parameter handler in str{n,i}cmp functions.
391       msvcrt: Don't make stdout and stderr bufferred when writing to console.
392       msvcrt: Use temporary buffers to speed up operations on stdout and stderr.
394 Putin Evgeny (1):
395       cscript: Correct forming cmd for forwarding to wscript.
397 Rico Schüller (1):
398       advapi32: Use the lower 32bit of the special HKEYs on 64bit.
400 Ričardas Barkauskas (3):
401       advapi32: Add AddMandatoryAce stub.
402       kernel32: Add SetFileInformationByHandle stub.
403       advapi32: Partially implement CreateProcessWithTokenW.
405 Sergey Guralnik (3):
406       user32/tests: Test standard scrollbar initialization.
407       user32: Init standard scrollbars during WM_NCCREATE.
408       winemenubuilder: Try to wait for creating icon files.
410 Stefan Dösinger (15):
411       wined3d: Ignore clears if count = 0 and rects != NULL.
412       ddraw: Implement DrawPrimitiveStrided with regular draws.
413       ddraw: Implement DrawIndexedPrimitiveStrided with regular draws.
414       d3d: Remove high level patch support.
415       wined3d: Remove draw_primitive_strided.
416       d3d8/tests: Add simple DrawRectPatch tests.
417       d3d9/tests: Add simple DrawRectPatch tests.
418       ddraw: device::GetCurrentViewport returns an error if no viewport is set.
419       ddraw: Delete viewports when destroying the device.
420       ddraw: Check for NULL pointers in DeleteViewport.
421       ddraw: Check for NULL pointers in SetCurrentViewport.
422       ddraw: AddViewport holds a reference to the viewport.
423       ddraw: Unset the viewport if the current vp is deleted.
424       ddraw: Don't check for NULL in GetCurrentViewport.
425       ddraw/tests: Add viewport handling tests.
427 Stefan Leichter (1):
428       gdi32: Add stub for GetFontResourceInfoW.
431 Alexandre Julliard
432 julliard@winehq.org