The Wine development release 1.7.40 is now available
What's new in this release (see below for details):Wine 1.7.40 released
- Support for kernel job objects.
- Various fixes to the ListView control.
- Better support for OOB data in Windows Sockets.
- Support for DIB images in the OLE data cache.
- Improved support for MSI patches.
- Some fixes for ACL file permissions.
- Various bug fixes.
The source is available from the following locations:
http://prdownloads.sourceforge.net/wine/wine-1.7.40.tar.bz2
http://mirrors.ibiblio.org/wine/source/1.7/wine-1.7.40.tar.bz2
Binary packages for various distributions will be available from:
http://www.winehq.org/download
You will find documentation on http://www.winehq.org/documentation
You can also get the current source directly from the git
repository. Check http://www.winehq.org/git for details.
Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.
----------------------------------------------------------------
Bugs fixed in 1.7.40 (total 29):
19231 Trine Demo fails to start without native d3dx9_36
21433 InqScribe: Installed fine, but no output or UI response when running installed app
22139 CDBurnerXP 3.0.x produces a "fail" message after choosing a mode
26223 Multiple apps and games need wmvcore.dll.WMCreateReader implementation (Nail'd demo)
26748 World Series of Poker crashes when starting up a game
30648 SEGA Genesis / Mega Drive Classic Collection (Steam) crashes on startup
30723 Playchess listview control is broken
31579 Microsoft Visio 2007-2010 crashes on exit (unload of msctf component with ThreadMgr/CBT hook still alive)
32361 epson stylus t13 installer problem: wine: Unimplemented function setupx.dll16.DiOpenClassRegKey
33164 row-resize / col-resize cursor is wrong (Listview)
34254 Wine64 seh:RtlUnwindEx error with c++ exception handling
35135 Air Video Server HD 1.x crashes on startup (NULL SERVER_INFO_101.sv101_comment returned from NetServerGetInfo)
36133 valgrind shows some leaks in gdiplus/tests/image.c
36190 comdlg32/itemdlg shows a ton of valgrind warnings
36305 valgrind shows a possible leak in netapi32/tests/access.c
36332 Total Commander 8.x: moving files between folders renders them inaccessible (SetNamedSecurityInfo)
36656 valgrind shows an unintialized write in comdlg32/tests/itemdlg.c
36709 Multiple applications/games from Windows 7 need slc.SLGetWindowsInformationDWORD semi-stub/implementation
36842 Can't set a static crontrol's text to empty by passing NULL pointer
37731 Montezuma's Revenge Remake fails with fatal error when quitting the game
37960 Paint.NET 4.0.5 does not install: unimplemented function KERNEL32.dll.QueryThreadCycleTime
38205 Unreal Tournament 3 Black Edition installer fails after the language selection
38238 user32:input right-clicks outside its windows
38248 Worms World Party (w/SetCooperativeLevel workaround/hacks) and older versions of Worms Armageddon black screen on startup
38256 Myst Online Uru Live: too dark/missing textures
38261 Playchess doesn't install anymore
38282 Header control fails to update/synchronize listview when columns order changes
38288 Wrong pointer in icnsformat.c IcnsFrameEncode_WriteSource
38317 winetricks xna31 fails
----------------------------------------------------------------
Changes since 1.7.39:
Aaryaman Vasishta (1):
d3drm: Fix hard-coded HRESULT return in Direct3DRMFrame_create.
Alexandre Julliard (11):
server: Fix the string type in traces for I/O completion names.
dsound: Fix an error return code.
server: Post a notification to the desktop window when a top-level window is destroyed.
explorer: Cleanup system tray icons when their owner is destroyed instead of polling.
winex11: Cleanup system tray icons when their owner is destroyed instead of polling.
user32: Remove left-over freeing of the edit text with ES_PASSWORD.
comctl32: Print full flag values in traces.
msacm32: Print full flag values in traces.
riched20/tests: Print full flag values in traces.
user32/tests: Print full flag values in traces.
winmm: Print full flag values in traces.
Alistair Leslie-Hughes (2):
odbccp32: Implement SQLWritePrivateProfileStringA/W.
msctf: Always return FALSE in DllCanUnloadNow.
Andrew Cook (15):
kernel32/tests: Add tests for IsProcessInJob.
kernel32/tests: Add tests for TerminateJobObject.
kernel32/tests: Add tests for QueryInformationJobObject.
kernel32/tests: Add tests for job object completion ports.
kernel32/tests: Add tests for JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE.
kernel32/tests: Add tests for JOB_OBJECT_LIMIT_BREAKAWAY_OK.
kernel32/tests: Add tests for job inheritance.
kernel32/tests: Extend IsProcessInJob tests.
server: Implement CreateJobObject.
server: Implement AssignProcessToJobObject.
server: Implement IsProcessInJob.
server: Implement job limit flags.
server: Implement job inheritance.
server: Implement io completion messages for job objects.
server: Track handle count of objects.
Andrew Eikum (2):
oleaut32: Allow typelib filenames longer than MAX_PATH.
wineoss.drv: Don't skip over position updates of less than one fragment.
Andrey Gusev (1):
d3dx9_36: Assorted spelling and typos fixes.
Andrà Hentschel (5):
include: Add more header guards.
ntdll: Add support for FreeBSD on ARM.
ntdll: Fix CPU level on ARM.
ntdll: Get available CPU info from FreeBSD on ARM.
loader: Run checks also on ARM Linux.
Aric Stewart (2):
wineqtdecoder: Unload the AsyncReader on movie processing failure.
winmm: sndPlaySound can play resource sounds.
Austin English (2):
kernel32: Add a stub for QueryThreadCycleTime.
include: Add initial mfapi.h.
Bruno Jesus (13):
netapi32/tests: Fix a memory leak (Valgrind).
netapi32: Return an empty comment instead of NULL pointer in NetServerGetInfo.
winmm/tests: Add a basic joystick interactive test.
ws2_32: Don't try to receive data in an OOB_INLINED socket with MSG_OOB.
ws2_32: Convert send/recv flags to native system.
ws2_32: Add a helper to check if a socket is bound or not.
ws2_32: Ensure sockets in exceptfds get set when an error occurs.
ws2_32: Do not poll unbound descriptors.
ws2_32: Check for OOB data in select() calls when not OOB_INLINED.
ws2_32/tests: Add more WSAEnumNetworkEvents tests.
ws2_32/tests: Skip part of OOB test to unfreeze NT4 test.
ws2_32: Fix return value when receiving with MSG_OOB without data to read.
ws2_32: Better trace setsockopt/getsockopt.
Christoph von Wittich (2):
riched20: EM_SETSEL should not return 0.
riched20: Handle SCF_WORD.
David Hedberg (1):
comdlg32: Only attempt to update the layout if the dialog window exists.
David Naylor (2):
configure: Recognise host starting in 'amd64'.
configure: Explicitly set host_cpu for 'amd64'.
Dmitry Timoshkov (1):
shell32: Update version information to match XP values.
Erich Hoover (1):
advapi32/tests: Add tests for inheriting ACL attributes.
François Gouget (40):
taskschd: Remove an unneeded NONAMELESSUNION directive.
storage.dll16: Remove an unneeded NONAMELESSSTRUCT directive.
system.drv16: Remove an unneeded NONAMELESSSTRUCT directive.
toolhelp.dll16: Remove unneeded NONAMELESSXXX directives.
twain_32: Remove unneeded NONAMELESSXXX directives.
msctf: Mark internal symbols with hidden visibility.
msi: Mark internal symbols with hidden visibility.
msxml3: Mark internal symbols with hidden visibility.
ddraw/tests: Fix compilation on systems that don't support nameless unions.
urlmon: Remove unneeded NONAMELESSXXX directives.
wineoss.drv: Remove an uneeded NONAMELESSUNION directive.
usbd.sys: Remove an unneeded NONAMELESSSTRUCT directive.
user32: Remove an unneeded NONAMELESSSTRUCT directive.
windowscodecs: Remove unneeded NONAMELESSXXX directives.
mshtml: Mark internal symbols with hidden visibility.
oleaut32: Mark internal symbols with hidden visibility.
opengl32: Mark internal symbols with hidden visibility.
riched20: Mark internal symbols with hidden visibility.
winex11.drv: Remove unneeded NONAMELESSXXX directives.
wininet: Remove an unneeded NONAMELESSSTRUCT directive.
winspool.drv: Remove unneeded NONAMELESSXXX directives.
winmm: Remove unneeded NONAMELESSSTRUCT directives.
explorer: Remove an uneeded NONAMELESSUNION directive.
secur32: Mark internal symbols with hidden visibility.
sxs: Mark internal symbols with hidden visibility.
user32: Mark internal symbols with hidden visibility.
wbemprox: Mark internal symbols with hidden visibility.
winedbg: Remove unneeded NONAMELESSXXX directives.
rpcss: Remove unneeded NONAMELESSXXX directives.
regedit: Remove an unneeded NONAMELESSSTRUCT directive.
winecfg: Remove unneeded NONAMELESSXXX directives.
wineconsole: Remove an unneeded NONAMELESSSTRUCT directive.
wineps.drv: Mark internal symbols with hidden visibility.
wininet; Mark internal symbols with hidden visibility.
wmp: Mark internal symbols with hidden visibility.
shell32: Point the 'My Documents' symbolic link to the XDG or OS X 'Documents' folder if they exist.
widl: Remove unneeded NONAMELESSXXX directives.
winedump: Remove unneeded NONAMELESSXXX directives.
winhlp32: Remove an unneeded NONAMELESSSTRUCT directive.
winefile: Remove an unneeded NONAMELESSUNION directive.
FrÃdÃric Delanoy (1):
Assorted spelling/grammar fixes.
Hans Leidekker (17):
msi: Fall back to the database summary information stream in MSI_OpenPackageW.
msi: Avoid allocating a database handle only to retrieve the summary information.
msi: Use the last sequence number specified for patch media when updating media records.
msi: Check the component enabled flag earlier.
msi: Skip files from the original media if a patch is applied.
msi: Check file state before installing global assemblies.
msi: Import mspatcha instead of loading it dynamically.
msi: Store the disk id for file patches.
msi: Don't apply file patches in the cabinet extraction callback.
msi: Don't mark global assembly files as installed when they are extracted.
msi: Clean up handling of temporary files.
msi: Get rid of global variables the cabinet extraction callbacks.
wbemprox: Make sure to allocate sufficient memory in resize_table.
wbemprox: Fix a memory leak.
wbemprox: Implement more properties of Win32_Processor.
wbemprox: Implement more properties of Win32_VideoController.
wbemprox: Add a partial implementation of Win32_Printer.
Henri Verbeet (35):
wined3d: Store shader output signatures as a wined3d_shader_signature structure.
wined3d: Store shader input signatures as a wined3d_shader_signature structure.
wined3d: Merge some common shader initialization code into shader_init().
wined3d: Take the input slot into account when handling WINED3D_APPEND_ALIGNED_ELEMENT.
d3d10core: Also pass unused input layout elements to wined3d.
wined3d: Implement d3d10 style instance data step rates.
wined3d: Use the "sysval_semantic" field instead of "semantic_name" to recognize SV_POSITION.
wined3d: Add support for SV_InstanceID.
d3d10core: Implement d3d10_device_DrawInstanced().
d3d10core/tests: Add a test for D3D10_APPEND_ALIGNED_ELEMENT.
d2d1: Properly take the source offset into account in d2d_d3d_render_target_DrawBitmap().
d2d1: Implement d2d_state_block_GetTextRenderingParams().
d2d1: Implement d2d_state_block_SetTextRenderingParams().
d2d1: Implement d2d_state_block_GetDescription().
d2d1: Implement d2d_state_block_SetDescription().
d2d1: Implement d2d_d3d_render_target_GetFactory().
d2d1: Implement d2d_d3d_render_target_SetTextRenderingParams().
d2d1: Implement d2d_d3d_render_target_GetTextRenderingParams().
d2d1: Implement d2d_d3d_render_target_SetAntialiasMode().
d2d1: Implement d2d_d3d_render_target_GetAntialiasMode().
d2d1: Implement d2d_d3d_render_target_SetTextAntialiasMode().
d2d1: Implement d2d_d3d_render_target_GetTextAntialiasMode().
d2d1: Implement d2d_d3d_render_target_SetTags().
d2d1: Implement d2d_d3d_render_target_GetTags().
d2d1: Use a D2D1_DRAWING_STATE_DESCRIPTION structure to store render target drawing state.
d2d1: Implement d2d_d3d_render_target_SaveDrawingState().
d2d1: Implement d2d_d3d_render_target_RestoreDrawingState().
d2d1/tests: Add a test for ID2D1DrawingStateBlock.
d2d1: Do not multiply color brush RGB values with the brush opacity.
wined3d: Add support for half-integer pixel centers.
d2d1/tests: Add a test for color brushes.
wined3d: Take WINED3D_PIXEL_CENTER_INTEGER into account when calculating vpos.
wined3d: Use GLSL 1.30 for SM4 shaders when available.
d3d10core/tests: Port the d3d9 vPos test to d3d10.
d2d1: Fix a typo in the determinant calculation in d2d_d3d_render_target_FillRectangle().
Hugh McMaster (2):
netstat: Fix incorrect comment.
attrib: Fix incorrect comment.
Huw D. M. Davies (10):
ole32: Read the class id from the top-level storage object.
ole32: A cache entry should hold the stream its data is from, not the top-level storage.
ole32: Split the data loading into a couple of helpers.
ole32: Add support for parsing the 'CONTENTS' stream.
ole32: Separate metafile loading into a helper function.
ole32: Add support for loading dibs.
ole32: Add support for retrieving extents of dib format.
ole32: Add support for drawing the dib format.
ole32: Implement QueryGetData().
ole32/tests: Add tests for loading a dib 'CONTENTS' stream.
Jacek Caban (11):
mshtml.idl: Added IHTMLSelectionObject2 declaration.
mshtml: Added IHTMLSelectionObject2 stub implementation.
dxgi.idl: Added DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL declaration.
d3d11_1.idl: Added some missing declarations.
dxgi1_2.idl: Added IDXGIFactory2 declaration.
wininet: Pass timeout as DWORD in setsockopt calls.
d3d11sdklayers.idl: Added ID3D11Debug declaration.
dxgi1_2.idl: Added IDXGIAdapter2 declaration.
d3d11.idl: Added D3D11_FEATURE_DATA_D3D11_OPTIONS declaration.
d3d11_1.idl: Fixed ClearView argument (missing const).
wmsdkidl.idl: Added IWMReaderAdvanced* declarations.
Jinhui Chen (1):
winex11.drv: Fix row-resize/col-resize mapping to X cursor.
Ken Thomases (4):
winmm: For Mac, fix joyGetPosEx() to put number of buttons pressed in dwButtonNumber field.
winemac: Allow the user to attempt to resize a maximized window and try to restore it if they do.
winemac: Restore a maximized window if a user tries to move it by dragging its title bar.
winemac: Cleanup system tray icons when their owner is destroyed instead of polling.
Mark Harmstone (5):
comctl32: Use correct font for themed headers.
ntdll: Treat strings as case-insensitive in find_window_class.
comctl32: Redraw themed button on WM_ENABLE.
winecfg: Style updown control with UDS_ALIGNRIGHT.
winecfg: Add manifest.
Matteo Bruni (12):
wined3d: Use a separate STATE_VIEWPORT state handler in the GLSL pipeline.
wined3d: Introduce a get_projection_matrix() function.
wined3d: Introduce a get_texture_matrix() function.
wined3d: Don't use the builtin FFP uniform for the normal matrix.
d3d9/tests: Add more lighting tests.
d3d8/tests: Add more lighting tests.
wined3d: Don't use the builtin FFP uniform for the projection matrix.
ddraw: D3DLIGHT lights default to active.
ddraw: Make sure AddLight properly activates lights.
ddraw: Make sure to activate / deactivate the light on D3DLIGHT_ACTIVE flag changes.
ddraw: D3DRENDERSTATE_NORMALIZENORMALS doesn't exist before d3d7.
ddraw: Enable WINED3D_RS_NORMALIZENORMALS on d3d versions older than d3d7.
Michael Müller (4):
netprofm: Add stubbed IConnectionPoint interface.
netprofm/tests: Add tests for ConnectionPointContainer::FindConnectionPoint.
ntdll: Define a couple more information classes.
kernel32/tests: Add tests for GetFinalPathNameByHandleA/W.
Michael Stefaniuc (15):
mscoree: Use SUCCEEDED instead of !FAILED.
taskschd: Print the debug string instead of the pointer value.
mshtml: Print the debug string instead of the pointer value.
qcap: Print the debug string instead of the pointer value.
scrrun: Print the debug string instead of the pointer value.
schedsvc: Drop WINE_ prefix from ERR().
fntcache: Drop WINE_ prefix from FIXME/TRACE.
taskschd/tests: Test the correct return value.
mshtml/tests: Actually test the return of IHTMLTable_get_width().
windowscodecs/tests: Actually test the return of IWICBitmap_GetSize().
winhttp/tests: Test the correct return code.
d3drm/tests: Test the correct return code.
wmp: Forward from a Release to a Release method.
gdiplus: The result of a comparison is already a BOOL.
winealsa.drv: The result of a comparison is already a BOOL.
Nikolay Sivov (35):
comctl32/listview: Update view on style change only if LVS_TYPEMASK styles have changed.
user32/static: Allow setting NULL text.
scrrun: Added support for interface pointers as keys for dictionary.
scrrun: Added support for VT_DATE keys, and BYREF float key types.
scrrun: Support BYREF types for integer keys.
comctl32/tooltips: Allow NULL hinst value when fetching text from resources.
ole32: Return interface pointers instead of impl pointers from QI.
ole32/tests: Return interface pointer instead of impl pointer from QI.
msi: Return interface pointer instead of impl pointer.
dwrite: Forward IDWriteTextLayout::GetMetrics() to IDWriteTextLayout2::GetMetrics().
comctl32: Claim success in InitializeFlatSB().
comctl32/tests: Listview doesn't subclass its header.
taskmgr: Simplify setting extended style for a list.
rpcrt4/tests: Use status definitions instead of numeric values.
rpcrt4: Fix RpcMgmtStopServerListening() return value when we're not listening.
po: Corrected Russian translation.
dwrite: Pass sideways run flag to shaping methods.
comctl32/listview: Fix item focus rectangle to use proper label/selection bounds.
comctl32/listview: Fix focus rectangle for LVS_EX_FULLROWSELECT case.
comctl32/listview: Fix scrolling in LV_VIEW_DETAILS view.
comctl32/listview: Always forward LVM_GETCOLUMNORDERARRAY to header.
comctl32/listview: Remove outdated TODO comment.
dwrite: Initial implementation of DetermineMinWidth().
dwrite: Return CreateStreamFromKey() failure code from Analyze().
comctl32/listview: Support header item image/bitmap in LVSCW_AUTOSIZE_USEHEADER case.
comctl32/listview: Use defined name instead of magic value.
comctl32/listview: Always forward HDM_SETORDERARRAY to a header.
taskmgr: Set column order through listview.
comctl32/dsa: Implement DSA_Clone().
comctl32/dsa: Implement DSA_GetSize().
dwrite: Update to IDWriteRenderingParams2.
wincodecs: Use valid bitmap cache option.
msxml3: Explicitly list acceptable libxml2->msxml node types for unknode.
comctl32/tests: Fix couple of metrics tests that fail on some systems.
dwrite: Fix cluster width and length calculation.
Pierre Schweitzer (3):
setupapi: Implement SetupOpenLog(), SetupCloseLog().
setupapi: Implement SetupLogErrorA(), SetupLogErrorW().
setupapi/tests: Add tests for the SetupOpenLog(), SetupLogErrorA(), SetupCloseLog() functions.
Piotr Caban (21):
oleacc: Added Client_get_accChild implementation.
oleacc: Added client IEnumVARIANT stub.
oleacc: Added window IEnumVARIANT stub.
oleacc: Added client IEnumVARIANT::{Reset,Skip,Next} implementation.
oleacc: Added client IEnumVARIANT tests.
oleacc: Added AccessibleChildren implementation.
oleacc: Added AccessibleChildren tests.
msvcrt/tests: Add atan, tanh and exp tests on invalid arguments.
msvcrt: Fix NAN handling in printf.
msvcrt/tests: Use NAN and INFINITY definitions from port.h in printf tests.
user32/tests: Don't send mouse clicks to other process windows in input tests.
msvcp90/tests: Use NAN and INFINITY definitions from port.h in Ctraits::_Isnan tests.
advapi: Don't use CreateFile when opening file with possibly empty DACL.
server: Make directory DACL entries inheritable.
advapi32: Add SetNamedSecurityInfo test with empty DACL.
advapi32/tests: Add test for mapping DACL to permission.
advapi32: Add DACL inheritance support in SetSecurityInfo.
ntdll: Improve parameter validation in RtlAddAce.
server: Fix DACL to permissions conversion.
msvcr120: Add some missing exports on i386 architecture.
advapi32: Handle NULL DACL in SetSecurityInfo.
Sebastian Lackner (12):
gdiplus: Add missing returns in initialize_decoder_wic (Coverity).
user32: Use C_ASSERT to ensure user_thread_info fits into TEB->Win32ClientInfo.
browseui: Avoid race-conditions when progress dialog is released before thread terminates.
ntoskrnl: Emulate 'mov Eb, Gb' instruction on x86 processor architecture.
wiaservc: Return pointer to vtbl instead of implementation in wiadevmgr_Constructor.
kernel32/tests: Allow multiple subprocess commands in process tests.
kernel32/tests: Add tests for adding a terminated process to a job object.
advapi32/tests: Repeat ACL inheritance tests for NtCreateFile.
advapi32/tests: Add tests for NtCreateFile inheritance when security descriptor is set.
advapi32/tests: Merge common code to test DACL descriptors in a helper function.
advapi32/tests: Add tests for CreateFile with set security descriptor.
ntdll: Fix various bugs RtlUnwindEx on x86_64.
Sergey Isakov (1):
windowscodecs: Fix wrong pointer to formal parameter.
Shuai Meng (2):
vbscript: Implemented Oct.
vbscript: Fixed Hex.
Stefan Dösinger (15):
ddraw: Update the palette before presents to the NULL window.
ddraw/tests: The testbot applies color keying without a key.
ddraw/tests: Correct executebuffer offsets.
wined3d: Improve color fixups in atifs shaders.
wined3d: Check for conversion changes in the atifs fragment pipeline.
wined3d: Add per-context private data for fragment pipelines.
wined3d: Avoid constant collision in atifs.
ddraw/tests: Make sure color keying is on in test_texturemapblend.
ddraw/tests: Port test_color_fill to earlier versions.
wined3d: Implement per stage constants in atifs.
wined3d: Give tex_type and its values a better name.
wined3d: Pass a wined3d_ffp_texture_type enum to blit shader functions.
wined3d: Use bitfields in struct arbfp_blit_type.
wined3d: Pass a struct arbfp_blit_type to the blit shader generation functions.
wined3d: Define a constant for the blit texture size parameter.
Thomas Faber (5):
wscript: Correctly use CommandLineToArgvW.
gdi32: Avoid uninitialized variable use in EnumEnhMetaFile (MSVC).
setupapi/tests: Avoid side-effect in an assert.
user32/tests: Avoid side-effect in an assert.
winegstreamer: Avoid side-effects in asserts.
Vincent Povirk (8):
gdiplus: Fonts in UnitWorld shouldn't be scaled to the page unit.
gdiplus: Apply page scale to pen thickness.
gdiplus: Handle large input rect in GdipMeasureCharacterRanges.
gdiplus: Fix blend_colors when alpha channel differs.
mscoree: Remove the runtime version selection logic and just use 4.0.
gdiplus: Add support for reading PNG tEXt metadata.
windowscodecs: Implement PngDecoder_Block_GetCount.
windowscodecs: Implement PngDecoder_Block_GetReaderByIndex.
Zheng Chen (2):
msvcrt: Correct atan/exp/tanh errno setting.
msvcrt: Fix _copysign bugs for NAN/INF.