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:
http://prdownloads.sourceforge.net/wine/wine-1.5.9.tar.bz2 http://mirrors.ibiblio.org/wine/source/1.5/wine-1.5.9.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.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@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@H@Z 30184 Take advantage of xrandr 1.3 features 30221 Pegasus Mail v4.63 starts w/ exception "(0x80040100) (0x80040100) @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@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAVios_base@1@AAV21@@Z@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@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@D@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<char>::operator>> functions. msvcp90: Implement more basic_istream<wchar>::operator>> functions. msvcp90: Implement more basic_ostream<char>::operator<< functions. msvcp90: Implement more basic_ostream<wchar>::operator<< functions. msvcp: Sync spec files. msvcp90: Pass base class pointer to virtual functions. msvcp90/tests: Added destructor tests for class with virtual inheritance. msvcp90: Fix EOF handling in basic_filebuf<char>::underflow. msvcp90: Fix off by one issues in basic_string functions operating on iterators. msvcp90: Fix parsing of floating point numbers starting with decimal separator.
Rico Schüller (5): d3dx9: Implement ID3DXBaseEffect::GetMatrixPointerArray(). d3dx9: Implement ID3DXBaseEffect::GetMatrixTransposePointerArray(). d3dx9/tests: Add effect parameter value GetMatrixPointerArray() test. d3dx9/tests: Add effect parameter value GetMatrixTransposePointerArray() test. d3dx9/tests: Fix array increment in SetMatrix*PointerArray() test.
Thomas Faber (1): ntdll/tests: Add test for RtlIpv4StringToAddress.
Vincent Povirk (4): gdiplus: Fix GdipImageRotateFlip for images from streams. gdiplus: Fix memory leak in GdipImageRotateFlip. gdiplus: Implement LineJoinMiterClipped and partially implement LineJoinMiter. gdiplus: Accept a transformation matrix in GdipFlattenPath.
Wei-Lun Chao (3): po: Update Chinese (Taiwan) translation. po: Update Chinese (Taiwan) translation. po: Update Chinese (Taiwan) translation.
-- Alexandre Julliard julliard@winehq.org