Jump to content
Compatible Support Forums
Sign in to follow this  

Wine release 1.5.9

Recommended Posts

The Wine development release 1.5.9 is now available.


What's new in this release (see below for details):

- Support for GPOS font tables in Uniscribe.

- Support for XRandr 1.2 and 1.3.

- Parser improvements for the HLSL compiler.

- More key exchange algorithms supported on Mac OS.

- Relay tracing on ARM.

- Various bug fixes.


The source is available from the following locations:





Binary packages for various distributions will be available from:




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.5.9 (total 54):


3569 "MDK" does not display most of graphic

9638 VB6 apps using scrrun FileSystem object fail because GetIDsOfNames is not implemented (Fileant, WinAmbulance, ...)

18505 Crashday: Grey overlay at loading screen

20170 Gruntz: Slow down a lot when displaying text

20809 15 Days: Crash at startup

21346 Ashampoo Slide Show 2010: Slideshow preview window crashes the app

21487 hh.exe: Missing icons, problem displaying initial page of sample .chm file

25187 Sandlot games launcher "Play Now" button does nothing

25312 Add support for XRandR 1.2

25797 Dogfighter (Steam) hangs when changing the video settings

26247 Lifbase: text input area borders are corrupted

26815 Mini Golf cannot be played a second time

28428 eXperience 112: broken shadows

28949 VBSCript fail to parse 'for each in ' statement

29115 Pegasus Mail v. 4.62 build 191 generates exception in safecall method

29669 Dragon Age: Origins DVD authenticity checks fail (descriptor structures returned by DVD_READ_STRUCT need a descriptor header prepended)

29697 Winamp [5.623]: Application crashes at startup, needs msvcr90.dll.bsearch_s

29711 Quick Lohn installation crashes on setup

29824 Photoscape needs msvcp90.dll.??0?$basic_istringstream ( -at -) DU?$char_traits ( -at -) D ( -at -) std ( -at -) ( -at -) V?$allocator ( -at -) D ( -at -) 2 ( -at -) ( -at -) std ( -at -) ( -at -) QAE ( -at -) H ( -at -) Z

30184 Take advantage of xrandr 1.3 features

30221 Pegasus Mail v4.63 starts w/ exception "(0x80040100) (0x80040100) ( -at -) 01AD84F5" (OleCommandTarget_Exec Unsupported cmdID = 63)

30316 Pegasus Mail v4.63 - tooltips labels are left blank

30321 wine iexplore http://www.mozilla.org/en-US/plugincheck/ crash in mshtml

30472 iexplore http://jpl.nasa.gov crashes in HTMLDocument_get_cookie

30495 Serif WebPlus X2 fails to start due to windowscodecs BitmapEncoderInfo_GetPixelFormats being a stub

30533 The Walking Dead Episode 1: Black screen after startup

30602 GTA2 crashes on exit

30757 Dota 2 won't render with d3d9ex

30872 Fifa 2005 demo crashes with German language selected

30926 Mathematica 8.0.1 crashes on startup

30986 Severe frame rate regression in 3D games when changing cursor graphic (esp with animated cursors)

31082 StarTopia: crashes while loading

31092 ctest, cmake crash with null this in msvcp90.locale_dtor

31104 msvcp90.dll.??5?$basic_istream ( -at -) DU?$char_traits ( -at -) D ( -at -) std ( -at -) ( -at -) ( -at -) std ( -at -) ( -at -) QAEAAV01 ( -at -) P6AAAVios_base ( -at -) 1 ( -at -) AAV21 ( -at -) ( -at -) Z ( -at -) Z unimplemented

31115 Driftmoon needs Win32_BaseBoard WMI class (queries for SerialNumber property)

31120 Clones (game) crashes on start in quartz

31124 Trying to install Sketchup pro 8 on Ubuntu 12.04 64bit

31127 .NET Framework 4.5 RC Runtime Optimization Service needs kernel32.dll WerSetFlags stub

31128 Microsoft.Build tool from .NET Framework 4.x requires kernel32.dll GetDynamicTimeZoneInformation

31130 Microsoft C# compiler from .NET Framework 4.x requires kernel32.dll GetLocaleInfoEx

31131 installer of Thunder 7 crashes at unimplemented msvcp71.dll.?$?6U?$char_traits ( -at -) D ( -at -) std ( -at -) ( -at -) ( -at -) std ( -at -) ( -at -) YAAAV?$basic_ostream ( -at -) DU?$char_traits ( -at -) D ( -at -) std ( -at -) ( -at -) ( -at -) 0 ( -at -) AAV10 ( -at -) D ( -at -) Z

31132 Rise of Nations : Will not Start

31138 EverQuest II: Launchpad hangs while loading

31141 wined3d_get_adapter_display_mode failure with relay+trace

31155 Microsoft SQL Server 2005 Express Edition: SQL Server System Configuration Checker fails (needs StdRegProv WMI class)

31160 Driver problem for Epson stylus sx235w printer/scanner. unimplemented function setupapi.dll.SetupDiGetDeviceInstallParamsW

31165 Kareo installer puts up fatal dialog on startup

31187 Error file not found "Version.ini" on IPView Pro 3.00 and 4.00 with builtin scrrun.dll

31198 Google Sketchup Layout crashes during startup

31201 MathCad 15 can't acquire trial license

31213 Amnesia - The Dark Descent: launcher.exe crashes on start

31214 Eschalon Book I: corrupted text in DirectX mode

31219 Wine cannot install dotnet2 using winetricks

31229 ChessBase 2009 Light help viewer crashes




Changes since 1.5.8:


Alex Henrie (1):

user32: Minimize and maximize boxes can only appear when WS_SYSMENU is set.


Alexandre Goujon (5):

include/ddk: Add DVD_DESCRIPTOR_HEADER descriptor structure.

kernel32/tests: Add a helper to test CDROM ioctl.

kernel32/tests: Add a IOCTL_DVD_READ_STRUCTURE (DvdPhysicalDescriptor) test.

kernel32/tests: Add a IOCTL_DVD_READ_STRUCTURE (DvdCopyrightDescriptor) test.

kernel32/tests: Add a IOCTL_DVD_READ_STRUCTURE (DvdManufacturerDescriptor) test.


Alexandre Julliard (7):

winex11: Get rid of the no longer needed drawable rect in the X11 device.

wined3d: Remove unused variables.

gdiplus: Avoid out of bounds access warning.

opengl32: Mark invalid handles with ffff instead of 0.

opengl32/tests: Run more tests against the GDI renderer.

server: Subtract the current update region from the valid rect when a window client area is changed.

user32/tests: Move DlgDirList tests to avoid changing the current directory for other tests.


Alistair Leslie-Hughes (2):

scrrun: Add typelib support.

mmcndmgr: Implement IMMCVersionInfo.


Andrew Eikum (1):

mpr: Don't succeed if drive is not remote in WNetGetUniversalName.


André Hentschel (8):

winedbg: Add branch and exchange operator to ARM disassembler.

winedbg: Add multiplication operators to ARM disassembler.

winedbg: Add swap operator to ARM disassembler.

winedbg: Add new operators regarding data processing to ARM disassembler.

setupapi: Add a stub for SetupDiGetDeviceInstallParamsW.

winebuild: Generate relay debugging thunks for ARM.

ntdll: Add support for relay debugging on ARM.

msvcrt: Add bsearch_s implementation by reusing code and tests from ntdll.


Aric Stewart (16):

comdlg32: Do not use GetDlgItemText to get combo box text during an CBN_SELCHANGE notification.

ups10: Rename common opentype tables used in both GSUB and GPOS to OT_.

usp10: Load the GPOS table.

usp10: Change OpenType_GSUB_GetFontScriptTags to OpenType_GetFontScriptTags and load scripts from GPOS table as well.

usp10: Change OpenType_GSUB_GetFontLangaugeTags to OpenType_GetFontLanguageTags and load languages from GPOS table as well.

usp10: Change OpenType_GSUB_GetFontFeatureTags to OpenType_GetFontFeatureTags and load features from GPOS table.

usp10: Implement SHAPE_ApplyOpenTypePositions using GPOS table.

usp10: Implement GPOS Anchor formats.

usp10: Add GPOS features to scripts as defined by VOLT.

usp10: In ScriptTextOut make use of piAdvance and pGoffset to position glyphs.

usp10: Implement GPOS MarkToBase.

usp10: Handle GPOS ValueRecords.

usp10: Implement GPOS Single Adjustment Positioning.

usp10: Implement GPOS Pair Adjustment Positioning Subtable.

ups10: Implement Single Adjustment Positioning: Format 2.

usp10: Implement GPOS Coverage-based Chaining Context Glyph Positioning.


Austin English (4):

kernel32: Add a stub for WerSetFlags.

kernel32: Add a stub for GetDynamicTimeZoneInformation.

inseng: Add a stub for DllInstall.

kernel32: Add a stub for GetLocaleInfoEx.


Bruno Jesus (2):

user32/tests: Add a test for OpenClipboard twice with non-zero hwnd.

user32/tests: Update DlgDirList tests.


Dan Kegel (1):

wininet: Don't evaluate netconn_get_avail_data() twice in netconn_read().


Daniel Jelinski (6):

comctl32/treeview: Clean up mouse tracking code.

comctl32/treeview: Fix NM_RCLICK behavior.

comctl32/treeview: Send WM_CONTEXTMENU everywhere, not just over items.

comctl32/treeview: Inlined TREEVIEW_RButtonUp.

comctl32/treeview: Send WM_CONTEXTMENU only to parent window.

comctl32/treeview: Fix the position reported by WM_CONTEXTMENU.


Daniel Lehman (1):

msvcp90: Handle npos as a len in basic_string::replace.


Detlef Riekenberg (3):

credui: Add a stub for CredUIInitControls.

advapi32: Implement CredIsMarshaledCredentialA/W.

advapi32/tests: Add tests for CredIsMarshaledCredential.


Dmitry Timoshkov (24):

winex11.drv: Avoid conflicting definitions of WINGDIAPI.

gdiplus: Add a test for palette associated with black&white TIFF image.

windowscodecs: Add a test for palette associated with black&white TIFF image.

windowscodecs: Add support for generating WICBitmapPaletteTypeFixedBW palette. Resend.

windowscodecs: Add support for generating WICBitmapPaletteTypeFixedGray4 palette.

windowscodecs: Add support for generating WICBitmapPaletteTypeFixedGray16 palette.

windowscodecs: Add support for generating WICBitmapPaletteTypeFixedGray256 palette.

windowscodecs: Add support for generating WICBitmapPaletteTypeFixedHalftone8 palette.

windowscodecs: Add support for generating WICBitmapPaletteTypeFixedHalftone64 palette.

windowscodecs: Add support for generating WICBitmapPaletteTypeFixedHalftone256 palette.

windowscodecs: Use predefined WICBitmapPaletteTypeFixedGray4 palette instead of a handmade one.

windowscodecs: Use predefined WICBitmapPaletteTypeFixedGray16 palette instead of a handmade one.

windowscodecs: Test pixel format of the loaded TIFF image.

windowscodecs: Avoid casting IWICFormatConverter to IWICBitmapSource.

windowscodecs: Use predefined WICBitmapPaletteTypeFixedBW palette instead of a hand-made one.

gdiplus: Make sure that 1bpp bitmap images get loaded in native format.

gdiplus: Fix palette flags for a not indexed 1-bpp image.

gdiplus: Make sure that GdipBitmapLockBits stores valid lockmode.

gdiplus: Add some tests for GdipBitmapLockBits/GdipBitmapUnlockBits.

gdiplus: Use public ColorPalette structure to store image palette.

gdiplus: Pass complete palette info to convert_pixels().

gdiplus: Pass palette instead of bitmap to setpixel helpers.

gdiplus: Add support for converting RGB formats to 8bpp indexed.

gdiplus: Add support for converting RGB formats to 1bpp indexed.


Erich Hoover (3):

shell32: Fix FindExecutable search path when a default directory is supplied.

hhctrl.ocx: Implement HH_CLOSE_ALL.

hhctrl.ocx: Permit WS_CHILD help windows.


Francois Gouget (4):

gdi32: Remove an unused wgl debugging channel.

winex11.drv: We must include Xlib.h before Xrandr.h.

appwiz.cpl: Only offer to download an addon if its installer is missing.

mshtml: Avoid returning with an unset URL policy in error cases.


Gerald Pfeifer (1):

ntdll: Omit unused typedef in test_query_process_basic.


Hans Leidekker (13):

wbemprox: Add a partial Win32_BaseBoard class implementation.

wbemprox: Implement Win32_Processor.Manufacturer and Win32_Processor.Name.

fusion: Also copy external files in IAssemblyCache::InstallAssembly.

ntdll: Report 3dnow and sse features if the processor supports them.

setupapi: SetupInstallServicesFromInfSection doesn't fail if there are no AddService or DelService directives in the section.

msi: Don't crash if no working directory is specified for custom action type 34.

msi: Don't hard-code the ServicePackLevel property.

wbemprox: Add support for evaluating string comparisons.

wbemprox: Implement Win32_NetworkAdapter.MACAddress and Win32_NetworkAdapter.PNPDeviceID.

wbemprox: Return a null variant instead of an empty string if the property isn't set.

wbemprox: Add a partial StdRegProv class implementation.

wbemprox: Add support for creating new tables.

msi/tests: Mark some test results as broken.


Henri Verbeet (33):

secur32: Only read complete records in schan_InitializeSecurityContextW().

wined3d: Fix the .spec.

d3d9: Implement d3d9_device_ResetEx().

winex11: Get rid of xvidmode.h.

winex11: Get rid of xrandr.h.

wined3d: Get rid of the "lockable" parameter to device_parent_create_rendertarget().

wined3d: Get rid of the "discard" parameter to device_parent_create_depth_stencil().

wined3d: Print a more obvious message if a format doesn't have a corresponding GL internal format.

winex11: Remove some unused includes from xrandr.c.

winex11: Introduce a separate function for initializing the list of XRandR display modes.

wined3d: Introduce a helper function for checking surface block alignment.

wined3d: Fix the block alignment check in surface_cpu_blt().

wined3d: Merge the device parent create_rendertarget() and create_depth_stencil() handlers.

winex11: Simplify X11DRV_XRandR_Init() error handling a bit.

winex11: Get rid of some needless globals.

d3d10core: Always create a wined3d texture for d3d10core textures.

d3d10core: Implement d3d10_texture2d_Unmap().

d3d10core: Implement d3d10_texture2d_Map().

ddraw: Get rid of the "tex_root" hack.

ddraw: Get rid of some redundant TRACE_ON invocations.

ddraw: Create texture surfaces from device_parent_create_texture_surface().

winex11: Simplify the XRandR mode matching code a bit.

winex11: Fix the virtual desktop check in update_desktop_fullscreen().

ddraw: Create surfaces with the correct mip level in device_parent_create_texture_surface().

wined3d: Get rid of the unused sampler_stages limit.

winex11: Properly calculate the virtual screen rect in xinerama_init().

winex11: Add support for XRandR 1.2.

winex11: Add support for XRandR 1.3.

wined3d: Use the proper texture target in arbfp_blit_set().

wined3d: Use the proper texture target in ffp_blit_set().

wined3d: Use the proper texture target in fb_copy_to_texture_direct().

wined3d: Use the proper texture target in ffp_blit_p8_upload_palette().

wined3d: Introduce a separate function for initializing various limits.


Huw Davies (3):

winspool: Don't assume that CUPS is available.

ntdll: Increase the buffer size for processor features and add a check to catch future overflows.

ntdll: Remove a spurious assignment.


Jacek Caban (35):

vbscript: Better representation of statement context.

vbscript: Fixed 'exit do' statements crossing for in loops.

vbscript: Fixed function return crossing for loop.

vbscript: Added support for exit for statement in 'for in' loops.

ieframe: Call OnInPlaceDeactivate in DoVerb(OLEIVERB_HIDE) implementation.

ieframe: Added more DoVerb tests.

ieframe: Added init_test helper.

ieframe: Avoid useless QI(IID_IWebBrowser2) calls in tests by passing IWebBrowser2 interface where possible.

vbscript: Ignore version flags in GetDispID.

mshtml: Moved binding list to HTMLInnerWindow.

mshtml: Simplify ASServiceProvider_QueryService.

mshtml: Moved detaching inner window to separated function.

vbscript: Added UCase implementation.

vbscript: Added LCase implementation.

mshtml: Create inner window early in binding process and use it to store current binding callback.

mshtml: Use per-inner window task_magic for binding.

mshtml: Don't store outer window in nsChannelBSC.

mshtml: Use proper task_magic in async_open.

mshtml: Get rid of no longer needed support for new window navigation in before_async_open.

mshtml: Added HTMLElement::onkeypress implementation.

mshtml: Added HTMLInputElement::onchange implementation.

mshtml: Added IHTMLInputElement::maxLength implementation.

mshtml: Added IHTMLAnchorElement::name implementation.

mshtml: Moved invoking DISPID_VALUE to separated function.

mshtml: Added support for calling functions returned by builtin getters.

mshtml: Added test of calling IDispatchEx properties.

jscript: Prefer builtin version.

jscript: Properly set Number.prototyp.constructor.

jscript: Properly handle constructor property for most builtin constructors.

jscript: Properly set Function constructor's constructor property.

jscript: Properly set Error object's constructor property.

jscript: Expose RegExpError constructor in global object.

jscript: Don't set constructor property to each object instance, it belongs to their prototypes.

d3drmdef.h: Replace unsigned long by ULONG.

mshtml: Ignore navigation failures from detached bindings.


Józef Kucia (9):

d3dx9: Validate the size of a volume texture in D3DXGetImageInfoFromFile.

d3dx9: Fix D3DXLoadVolumeFromVolume so it works for subsets of volumes.

d3dx9: Implement D3DXLoadVolumeFromFileInMemory.

d3dx9/tests: Add tests for D3DXLoadVolumeFromFileInMemory.

d3dx9: Implement D3DXLoadVolumeFromFile.

d3dx9: Implement pixel format conversion for volume textures.

d3dx9: Implement point filtering for volume textures.

d3dx9: Use structure to pass volume size to pixel format conversion functions.

d3dx9: Implement volume texture filtering in D3DXFilterTexture.


Ken Thomases (3):

include/wincrypt.h: Add identifiers for Elliptic curve Diffie-Hellman algorithm.

secur32: On Mac, recognize key exchange algorithm for cipher suites using ECDH.

secur32: On Mac, define modern ECDH cipher suites if the SDK doesn't.


Lucas Zawacki (3):

joy.cpl: Correct joystick testing thread behavior.

joy.cpl: Tab for force feedback tests.

joy.cpl: Added force feedback direction control.


Marcus Meissner (5):

d3dcompiler_43: Fixed small overread possibility (Coverity).

krnl386.exe16: Do not truncate the strcmp result (Coverity).

setupx.dll16: Avoid strcmp() result truncation (Coverity).

shell32: Avoid memcmp result truncation (Coverity).

user.exe: Avoid truncating strcmp result (Coverity).


Matteo Bruni (20):

d3dcompiler: Fix line info update.

d3dcompiler: Type names have to be allocated on the heap.

d3dcompiler: Carry around both shader major and minor version.

d3dcompiler: Parse compilation target.

d3dcompiler: Initialize and fix compilation messages generation.

d3dcompiler: Properly print compilation messages.

d3dcompiler: Make declaration_statement return a list.

d3dcompiler: Pass the shader filename to the preprocessor.

d3dcompiler: Add a trace to the scope push/pop functions.

d3dcompiler: Improve debug_hlsl_type function.

d3dcompiler: Add hlsl_report_message function to standardize error messages.

d3dcompiler: Track the location of each lexer token.

d3dcompiler: Introduce source_location structure.

d3dcompiler: Store (and begin to use) location information for variables.

d3dcompiler: Use location information in add_modifier().

d3dcompiler: Store location information in constants, variable dereferences and constructors.

d3dcompiler: Pass the complete location to add_func_parameter().

d3dcompiler: Variables and functions can't have the same name.

d3dcompiler: Don't allow semantics on void functions.

d3dcompiler: Implement basic expressions parsing.


Michael Stefaniuc (1):

quartz: Remove an object to IFilterGraph2 cast.


Nicolas Le Cam (1):

windowscodecs: Avoid using uninitialized value (LLVM/Clang).


Nikolay Sivov (22):

msxml3: Don't use stream written value when saving to stream.

msxml3: Fix xml declaration output when it's specified in loaded document (in case of stream).

msxml3: Fix xml declaration output when it's specified in loaded document (in case of file).

msxml3: Remove unneeded xmlInitParser call.

msxml3: Add VT_I1 type to variant dump helper.

scrrun: Added IFileSystem3_FileExists implementation.

ole32: COM cleanup of storage IStream implementation.

ole32: Implement GetConvertStg().

ole32: Simplify storage root entry name initialization.

ole32: COM cleanup for IStorage interface of base storage implementation.

ole32: COM cleanup of IPropertySetStorage interface.

ole32: No need to test for null implementation pointer in methods.

ole32: Implement SetConvertStg().

msxml3: Protect from null pointer in load().

msxml3: Implement put/get for DTD handler callback interface.

msxml3: Implement a common way to store and get callback interface pointers.

msxml3: Use single helper to test for handler presence.

ole32: Use interface macros to call methods.

ole32: Make ole stream creation helper capable of handling flags data.

ole32: COM cleanup of HGLOBAL ILockBytes implementation.

ole32: COM cleanup for IErrorInfo.

ole32: Fix QueryInterface for IErrorInfo to return IUnknown pointer.


Nozomi Kodama (2):

d3dx9: Implementation of D3DXSHMultiply2.

d3dx9_36: Implementation of D3DXSHEvalDirection.


Piotr Caban (10):

msvcp90: Implement more basic_istream::operator>> functions.

msvcp90: Implement more basic_istream::operator>> functions.

msvcp90: Implement more basic_ostream::operator


Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this