Wine Announcement

The Wine development release 1.5.1 is now available.

What's new in this release (see below for details):
  - Built-in JavaScript now preferred over Gecko in most cases.
  - Support for scalable font resources.
  - Fixes for audio and video playback.
  - Support for script decoding in JScript.
  - 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

You can also get the current source directly from the git
repository. Check 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.1:

   3498  Civilization 3: needs CreateScalableFontResource implemented
   4656  Text in title of tabe is not displayed
   6072  Demo of Runaway: A Road Adventure crashes
   6548  "Nancy Drew: The Creature of Kapu Cave" won't start
   7382  Star wars empire at war fails to initialize sound
  10262  wxWidgets TextCtrl in Python
  12434  La-Mulana Jukebox crashes
  13254  CPUZ 1.45 crashes when trying to select a different tab via keyboard
  13618  Melty Blood Act Cadenza Ver. B Incorrect Rendering
  14497  Airport Inc: Text does not render
  14614  Devil May Cry 4 displays a black screen
  15620  starting games totaly kills the sound on the system
  17529  LOTRF BFME2 demo crashes after splash screen on some systems
  17592  La-Mulana: crash on startup due to problem with dmusic
  18235  Word Pro tables run past margins
  18553  Opera native skin widgets are black/invisible
  18563  dreamweaver 8 hangs when encountering •
  19224  launching a "New Query" pane produces an "OutOfMemory" error in MS SQL SMSE
  20053  Team-Fortress 2 and other source games suffer from black menu and missing UI textures in dx9 mode
  20185  noisy shadows in CRRCSim
  20301  Word Pro looses keyboard
  20420  VB6 Font size problem with custom usercontrols
  20587  Ragnarok Online takes 99-100% CPU under wine.
  20805  FL Studio and MIDI Controller
  21463  Star Trek: Starfleet Command III fails to start
  21958  Anarchy Online crash after login on PCBSD
  22456  Wrong caching with INI functions
  22498  Stuttering sound when playing HoMM3
  22780  Trackmania United Forever crashes with complex shaders enabled
  22901  Copy/Paste doesnt work for some programms
  23944  Verizon Media Manager needs native Windows VB scripting dlls to install
  24108  error in Visual Basic Editor
  24240  Edge of Chaos high quality textures are broken
  24263  "bricksntiles" crashes
  24775  Samsung Kies installer stops early
  24833  Verizon Media Manager doesn't detect Windows Media Framework 11 that it installs
  25868  Angry Birds: sound is choppy or doesn't play at all
  26217  Lylian: Mouse clicks don't register
  26299  Solidworks 2010: Fails to install
  26358  Office 2003 installer crashes immediately
  26522  Descent 3: game unbearably slow with D3D
  26540  Irfanview 4.28 paint extension changes to the image are lost upon closing the paint window
  27633  Missing StrToInt64Ex in SHLWAPI.DLL
  27636  Brigade E5 NEW jagged union do not run
  28558  Skype 5.3 crash in wined3d
  29031  Game borderlands does not start
  29146  Wine should warn user when generating invalid shaders
  29602  Sound stops after first sound/audio output in Age of Empires 2.
  29859  Renegade X fails to install with Mono 2.10 (works with .NET Framework 4.0 prerequisite)
  29951  Some links don't work in iexplore - needs Navigate_anchor Navigating to target L"_top"
  30042  IHTMLtablecell is unimplemented?
  30072  Microsoft .NET Framework 4.5 Developer Preview installer needs some wevtapi.dll stubs (EvtOpenChannelConfig, ...)
  30189  Strong Bad's Cool Game launcher: buttons not working
  30190  Unimplemented function gdiplus.dll.GdipResetPageTransform
  30192  Cossacks: European Wars - game encyclopedia won't open
  30195  Glitches in GTAVC menu apparent window size
  30230  The MSIMODIFY_MERGE function in TABLE_modify is missing
  30288  builtin iexplore crashes at loading


Changes since 1.5.0:

Akihiro Sagawa (6):
      msvcrt: Add test for _mbbtombc.
      msvcrt: Improve _mbbtombc to handle Japanese characters.
      msvcrt/tests: Rewrite test_mbcjisjms to test in various codepages.
      msvcrt/tests: Add more tests for _mbcjistojms.
      msvcrt: Fix _mbcjistojms off by one error.
      msvcrt: Fix _mbsnbcmp and _mbsnbicmp implementation.

Alessandro Pignotti (1):
      atl: Send OLE_CLOSE command to control on detach.

Alexandre Julliard (1):
      ntdll: Also call the unwind handler for the target frame.

Alistair Leslie-Hughes (4):
      mscoree: Allow capital for version number.
      scrrun: Add DllCanUnloadNow, DllGetClassObject stubs.
      scrrun: Register Scripting interfaces.
      gdiplus: Add GdipResetPageTransform stub.

Andoni Morales Alastruey (1):
      msi: Implement MSIMODIFY_MERGE function in TABLE_modify.

Andrew Eikum (9):
      dmusic: Return more accurate error codes in IDirectMusicSegment::Load.
      dmloader: Don't claim partial success when loading fails.
      dmloader: Add simple playing test.
      winmm: Support DRVM_MAPPER_PREFERRED_GET in waveXxxMessage.
      winmm: Report waveIn devices' component type as Microphone.
      mmdevapi: TRACE all COM method calls.
      mciqtz32: Stop the graph when the file is no longer playing.
      dmusic: Support creating default ports with GUID_NULL.
      dmusic: Reimplement instrument loading.

André Hentschel (18):
      msvcrt: Fix a typo.
      msi: Allow ARM installations.
      winefile: Remove unused macros.
      winefile: Resize controls for translations.
      winefile: Fully convert to unicode.
      view: Show the filename in the window title.
      winemaker: Handle library search pragmas.
      wevtapi: Add stub for EvtOpenChannelConfig.
      wevtapi: Add stubs for EvtGetChannelConfigProperty, EvtSetChannelConfigProperty and EvtSubscribe.
      kernel32: Handle LOCALE_NAME_USER_DEFAULT with tests.
      vcomp100: Add new stub dll.
      make_specfiles: Add vcomp group.
      winedbg: Fix a typo.
      winebuild: Create stubs for ARM.
      include: Add new ARM defines to winnt.h.
      include: Add peARM to fusion.idl.
      view: Also show the filename in the window title when loading it from command line.
      po: Update German translation.

Aric Stewart (14):
      usp10: Properly handle invalid arguments to ScriptBreak.
      strmbase: COM cleanup for BaseFilter.
      strmbase: COM cleanup for BasePin, BaseInputPin, and BaseOutputPin.
      strmbase: COM cleanup for cleanup SourceSeeking.
      usp10: Add fallback font for Myanmar.
      wineqtdecoder: COM cleanup.
      strmbase: COM cleanup for TransformFilter.
      wineqtdecoder: Implement base IQualityControl in QTOutPin.
      strmbase: Add beginnings of BaseWindow.
      strmbase: Implement BaseControlWindow.
      strmbase: Implement BaseControlVideo.
      strmbase: Basic BaseRenderer implementation.
      wineqtdecoder: Read the header of unknown incoming streams to try to identify common formats.
      quartz: Update null renderer to use the BaseRenderer from strmbase.

Aurimas Fišeras (1):
      po: Update Lithuanian translation.

Bruno Jesus (3):
      ws2_32: Handle NULL proto in WSAAsyncGetServByName.
      kernel32/tests: Show that ini cache must not be used if file no longer exists.
      kernel32: Avoid ini cache if file does not exist anymore.

Cheer Xiao (1):
      po: Update simplified Chinese translation.

Christian Costa (28):
      amstream: Add support for AMMSF_ADDDEFAULTRENDERER for audio stream.
      amstream/tests: Make test.avi filename an unicode string and test the file presence once for all.
      amstream/tests: Add media streams tests.
      amstream: Check purpose id in AddMediaStream.
      amstream: Video streams do not support default renderer.
      amstream: No media stream is created when the defaut renderer is used.
      amstream: Implement IAMMultiMediaStreamImpl_AddMediaStream + add tests.
      amstream/tests: Add some tests to retreive media streams to media stream filter.
      attrib: Display unknown options.
      attrib: Skip processing of . and .. entries.
      attrib: Display filenames with absolute path as in native.
      attrib: Add 2 missing spaces between attribute flags and filename.
      attrib: Do not hardcode number of characters in flags array.
      attrib: Dislay attribute flags in the right order.
      cmd/tests: If we rewind to the beginning of the line, don't increment line number.
      include: Add missing error codes.
      amstream: Implement AddMediaStream and GetMediaStream in media stream filter.
      amstream: Add stream to the media stream filter in IAMMultiMediaStreamImpl_AddMediaStream.
      amstream/tests: Verify if the dsound renderer is created when we create an audio stream with the default renderer.
      amstream/tests: Add tests for querying interfaces and creating samples on video and audio media streams.
      devenum: Add tests for devenum.
      dmime: Check return code of CoCreateInstance in Init method.
      strmbase: Display dll in which we are searching a class to instanciate.
      qcap: Enable registration of all non yet implemented filters.
      d3drm: Move mesh loading code into a separate function so it can be shared.
      d3drm: Partial implementation of IDirec3DRM:Load method + tests.
      dmusic: Add some tests for enumerating and creating ports.
      dmusic: Don't use method implementation directly. Pass through vtable with related macro instead.

Detlef Riekenberg (8):
      comdlg32/tests: Remove outdated/unused code.
      comdlg32: Validate more parameters in PrintDlgEx.
      comdlg32/tests: Test more parameters for PrintDlgEx.
      comdlg32: Use a helper to get the printer info.
      comdlg32: Use a helper to get the printer driver info.
      comdlg32: Use a helper to update the devmode handle.
      comdlg32: Return a device context when requested.
      comdlg32/tests: Add HDC tests for PrintDlgEx.

Dmitry Timoshkov (5):
      dinput: Use standard way for dumping POINT.
      psapi: Add missing return value checks.
      user32: IsDialogMessage should allow control ids other than IDOK when processing WM_KEYDOWN.
      advapi32: Add tests for kernel objects accessed with 0 and ACCESS_SYSTEM_SECURITY.
      advapi32: Add event security access tests.

Francois Gouget (3):
      d3drm/tests: Fix compilation on systems that don't support nameless unions.
      winapi: Add support for the arm architecture.
      cryptui: Use a single space after a full stop to follow the Windows GUI guidelines.

Frédéric Delanoy (3):
      attrib: Fix typo.
      po: Update French translation.
      cmd: Use BOOL instead of int for boolean variables.

Hans Leidekker (12):
      msi: Get the UI level from the global variable instead of the property.
      msi: Mask off modifiers before setting the UILevel property.
      sxs: Parse the display name in CreateAssemblyNameObject.
      sxs/tests: Add tests for CreateAssemblyNameObject.
      msi: Also set the Intel property on 64-bit processors.
      msi: Clear the cert pointer in MsiGetFileSignatureInformation.
      msi/tests: Reduce code duplication in the feature/component state tests.
      sxs: Implement IAssemblyCache::QueryAssemblyInfo.
      sxs: Add tests for IAssemblyCache::QueryAssemblyInfo.
      fusion/tests: Add another test for IAssemblyCache::QueryAssemblyInfo.
      msi: Detect installed side-by-side assemblies.
      advapi32: Return a fake security descriptor from CreatePrivateObjectSecurity.

Henri Verbeet (25):
      d3d8: Don't return a pointer to the implementation in IDirect3DSurface8Impl_QueryInterface().
      d3d8: Don't return a pointer to the implementation in IDirect3D8Impl_QueryInterface().
      d3d8: Don't return a pointer to the implementation in IDirect3DDevice8Impl_QueryInterface().
      d3d8: Don't return a pointer to the implementation in IDirect3DCubeTexture8Impl_QueryInterface().
      ddraw: Make ddraw_surface_wined3d_parent_ops static.
      ddraw/tests: Add a helper function to create a viewport.
      wined3d: Drop an Apple hack.
      wined3d: Load the backbuffer in the correct location before presenting in swapchain_gl_present().
      wined3d: Only update the drawable on surface unmap for the frontbuffer.
      wined3d: Drop the ORM_BACKBUFFER special case in surface_unmap().
      winex11: Use GLX_DONT_CARE instead of ~0 in ConvertAttribWGLtoGLX().
      d3d9: Store an implementation pointer to the d3d9 structure in IDirect3DDevice9Impl.
      d3d9: Don't return a pointer to the implementation in IDirect3DVolumeTexture9Impl_QueryInterface().
      d3d9: Don't return a pointer to the implementation in IDirect3DVolume9Impl_QueryInterface().
      wined3d: Recognise AMD HD 6770M and HD 6750M with closed drivers.
      wined3d: Drop the "vbo" check in wined3d_device_process_vertices().
      wined3d: Drop a questionable FIXME in device_stream_info_from_declaration().
      wined3d: Fix the VBO check in device_stream_info_from_declaration().
      d3d9: Don't return a pointer to the implementation in IDirect3DVertexDeclaration9Impl_QueryInterface().
      d3d9: Don't return a pointer to the implementation in IDirect3DTexture9Impl_QueryInterface().
      ddraw: Get rid of a couple of redundant else-statements.
      ddraw: Replace a ERR in ddraw_surface7_QueryInterface() with a WARN.
      ddraw: Querying IUnknown for a surface should return the IDirectDrawSurface interface.
      d3d9: Don't return a pointer to the implementation in IDirect3DSwapChain9Impl_QueryInterface().
      d3d9: Don't return a pointer to the implementation in IDirect3DSurface9Impl_QueryInterface().

Huw Davies (16):
      gdi32: Add a helper to retrieve the family names and simplify the logic.
      gdi32: Add a helper to retrieve the family pointer.
      gdi32: Add a helper to create a family.
      gdi32: Add a helper to retrieve the font version.
      gdi32: Add a helper to retrieve the ntm flags.
      gdi32: Add a helper to retrieve a bitmap font's internal leading.
      gdi32: Add a helper to retrieve the fontsignature.
      gdi32: Add a helper to free a face object and fix a potential memory leak.
      gdi32: Remove the loop over bitmap sizes. FreeType lists different sizes as separate faces.
      gdi32: Separate face creation from face insertion.
      gdi32: Add a helper to create a new FreeType face.
      gdi32: Implement CreateScalableFontResource.
      gdi32: Add support for loading scalable font resources.
      winspool: Add a helper to duplicate a devmode.
      winspool: Add a helper to free a printer entry.
      winspool: Keep track of any supplied devmode.

Hwang YunSong (1):
      po: Update Korean translation.

Jacek Caban (39):
      jscript: Store source code in bytecode_t.
      jscript: Added beginning support for JScriptEncode object.
      jscript: Added JScriptEncode object tests.
      jscript: Added decoding support.
      jscript: Added decoding tests.
      vbscript: Lookup visible items before global members in lookup_identifier.
      vbscript: Init destination before passing it to VariantCopy in add_dynamic_var.
      vbscript: Evaluate object expression before value expression in member assignment.
      vbscript: Added parameterized assign identifier statement support.
      vbscript: Added parameterized assign member statement tests.
      vbscript: Added parameterized member assignment statement implementation.
      mshtml.idl: Added IHTMLObjectElement2 declaration.
      jscript: Return double instead of VARIANT from to_number.
      jscript: Return double instead of VARIANT from date_utc.
      jscript: Return double instead of VARIANT from stack_pop_number.
      jscript: Store value as double in NumberInstance object.
      mshtml: Added IHTMLObjectElement2 stub implementation.
      mshtml: Forward common getters from IHTMLObjectElement to IHTMLObjectElement2.
      mshtml: Use jscript.dll for JavaScript for all zones except untrusted.
      mshtml.idl: Added DispHTMLTableCell declaration.
      mshtml.idl: Added IHTMLTableCell declaration.
      mshtml: Added IHTMLTableCell interface stub implementation.
      mshtml: Improved VARIANT debug traces in htmlstyle.c.
      mshtml: Improved VARIANT debug traces in htmlwindow.c.
      mshtml: Improved VARIANT debug traces in htmltable.c.
      mshtml: Improved VARIANT debug traces in htmldoc.c.
      mshtml: Improved VARIANT debug traces in htmlelem.c.
      mshtml: Improved VARIANT debug traces in htmlbody.c.
      mshtml: Improved VARIANT debug traces in htmldoc*.c.
      mshtml: Improved more VARIANT debug traces.
      jscript: Properly handle NULL bstr in str_to_number.
      vbscript: Added Mid function implementation.
      vbscript: Use to_int in InStr implementation.
      mshtml: Added support for anchors with target '_top'.
      mshtml: Added IHTMLDocument2::get_domain implementation.
      mshtml: Use proper helpers to implement IHTMLSyle::fontSize property.
      mshtml: Use proper helpers in IHTMLStyle::color implementation.
      mshtml: Use proper helpers in IHTMLStyle::backgroundColor implementation.
      mshtml: Use better helper in IHTMLStyle::get_width implementation.

Józef Kucia (7):
      dinput8/tests: Use CLSCTX_INPROC_SERVER instead of a magic number.
      d3dx9/tests: Test the DDS support in the D3DXGetImageInfo functions.
      d3dx9: Forward D3DXCreateCubeTextureFromFileInMemory to D3DXCreateCubeTextureFromFileInMemoryEx.
      d3dx9: Add stubs for D3DXCreateVolumeTextureFromFileInMemory functions.
      d3dx9/tests: Add tests for D3DXCreateCubeTextureFromFileInMemory.
      d3dx9/tests: Add tests for D3DXCreateVolumeTextureFromFileInMemory.
      wpp: Fix a few memory leaks in the wpp_parse() function.

Kusanagi Kouichi (1):
      gdi32: Use helper functions when loading font from cache.

Lauri Kenttä (3):
      mscoree: Print the correct values in a TRACE.
      po: Update Finnish translation.
      po: Update Swedish translation.

Lucas Zawacki (1):
      dinput: Correct wrong loop delimiter in diactionformat_priority.

Matteo Bruni (3):
      wined3d: Update the correct draw buffers mask.
      wined3d: Support WINED3D_TTFF_COUNT3 texture projection in the ARB backend.
      include: Fix some winsock definitions.

Michael Mc Donnell (1):
      d3dx9: Do not weld self.

Michael Stefaniuc (26):
      hlink: Use the standard COM aggregation struct field names.
      d3d10core: Standardize COM aggregation for d3d10_device.
      activeds: Print the debug string and not the pointer to it.
      d3dx9_36: Print the debug string and not the pointer to it.
      dplayx: Print the debug string and not the pointer to it.
      gameux: Print the debug string and not the pointer to it.
      ieframe: Print the debug string and not the pointer to it.
      msxml3: Print the debug string and not the pointer to it.
      mshtml: Print the debug string and not the pointer to it.
      comdlg32: Print the debug string and not the pointer to it.
      dxdiagn: Print the debug string and not the pointer to it.
      quartz: Print the debug string and not the pointer to it.
      shell32: Print the debug string and not the pointer to it.
      urlmon: Print the debug string and not the pointer to it.
      dbghelp: Print the debug string and not the pointer to it.
      netapi32: Print the debug string and not the pointer to it.
      shlwapi: Print the debug string and not the pointer to it.
      dpnet: Print the debug string and not the pointer to it.
      qedit: Print the debug string and not the pointer to it.
      setupapi: Print the debug string and not the pointer to it.
      strmbase: Print the debug string and not the pointer to it.
      pstorec: Print the debug string and not the pointer to it.
      riched20: Avoid a forward declaration of a vtbl.
      riched20: Support COM aggregation in CreateTextServices().
      riched20/tests: Get the CreateTextServices() pointer only once.
      riched20/tests: Add COM aggregation tests for CreateTextServices().

Morten Rønne (1):
      wineconsole: Fixed a wrong word in message.

Nikolay Sivov (3):
      msxml3: Support processing instructions in writer.
      msxml3: Support ignorable whitespaces output in writer.
      comctl32: Use single notification message for setting all item state with LVM_SETITEMSTATE (LVS_OWNERDATA case only).

Piotr Caban (17):
      shell32: Prepare QueryAssociations helper functions to work on non LPWSTR data.
      shell32: Handle ASSOCDATA_EDITFLAGS in IQueryAssociations:GetData function.
      msvcp90: Don't define separate structures for num_get<char> and num_get<wchar>.
      msvcp90: Use DEFINE_RTTI_DATA to define iosb RTTI base descriptor.
      msvcp90: Use DEFINE_RTTI_DATA to define locale_facet RTTI base descriptor.
      msvcp90: Use DEFINE_RTTI_DATA to initialize exception RTTI data.
      msvcp90: Added numpunct<wchar> implementation.
      msvcp90: Added basic_streambuf<char> implementation.
      msvcp90: Added basic_streambuf<wchar> implementation.
      msvcp90: Added ios_base class implementation.
      msvcp90: Added this parameter to cdecl functions defined inside class.
      msvcp: Sync spec files.
      msvcp90: Added support for exception reraising in ios_base::clear.
      msvcp90: Added partial basic_ios<char> implementation.
      msvcp90: Added partial basic_ios<wchar> implementation.
      msvcp90: Added partial basic_ios<short> implementation.
      msvcp: Sync spec files.

Robert van Herk (1):
      msvcrt: Fix file mode T (temporary file).

Thomas Faber (2):
      xmllite/tests: Fix build with MSVC.
      dbghelp: Fix uninitialized variable usage.

Vincent Povirk (7):
      mscoree: Search for an arch-specific mono dll first.
      gdiplus: Detect hotkey prefixes when drawing strings.
      gdiplus: Draw hotkey underlines in GdipDrawString.
      gdiplus: Store copies of remap tables in ImageAttributes objects.
      gdiplus: Measure strings at device size, then rescale to world size.
      rpcrt4: Do nothing when DllMain is called because the process is exiting.
      gdiplus: Support bitmap creation from 16-bit ddb's.

Alexandre Julliard