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.
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 ----------------------------------------------------------------
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.
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.
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.
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.
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.
149 po: Update Lithuanian translation.
152 include: Flesh out d3d11.idl.
155 winebuild: Use Clang to assemble if found.
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.
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.
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.
191 winex11: Push down variable attrib down in create_gl_drawable.
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.
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().
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.
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.
301 winealsa: Have the MIDI recorder wait in poll(), not snd_seq_event_input().
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.
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.
331 dmusic: Actually return the allocated interface (Coverity).
332 msvcrt: read_utf8: free readbuf on return (Coverity).
333 kernel32: Conditional variable tests.
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.
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.
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.
395 cscript: Correct forming cmd for forwarding to wscript.
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.
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.
428 gdi32: Add stub for GetFontResourceInfoW.