Wine Announcement

The Wine development release 1.3.19 is now available.

What's new in this release (see below for details):
  - New sound driver architecture for MMDevAPI.
  - Better support for relative mouse events in DInput.
  - Debugger support for the ARM platform.
  - Various improvements in D3DX9.
  - More MSVC runtime functions.
  - 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.3.19:

   1544  Recurring error in direct draw
  11561  Page Four text rendering problems
  12018  SPSS 16 eval for Windows won't install
  12372  BreakQuest crashes on startup; "file not found"
  12958  winrar extract files slow with msstyles.
  16095  Charset translation in standard output
  16815  Cyborg shows splash screen and hangs
  17143  Micrografx Designer freezes at start
  17804  Sim City 3000 +NoCD fails to load
  17863  Some apps can not launch Installshield uninstaller from shortcut
  18823  The Typing of the Dead freezes during intro
  19152  SimCity 3000 Unlimited Black Main Menu
  19493  socket option IP_PKTINFO is not implemented
  20509  gdb proxy mode: random reply to Offsets query
  20982  shell32 appbar test fails in wow64 wine
  20983  shell32 systray test fails in wow64 wine
  21268  TheFilmMachine doesn't run
  21830  Kurso3 crashes when using the microphone
  22761  Qtracker 4.71 crashes on exit
  23684  Mass Effect 2 demo: decals on walls and floor flicker
  23789  dap94 : cannot find import; DLL may be missing,corrupt or wrong version. File "MSVCP60.dll",error 126
  23847  ntdll: NtQuerySystemInformation(SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION) should provide NT-style 100ns units (.NET 1.x CLR)
  24120  Mp3tag: Runtime Error if "Extended Tags" window is opened
  24214  ole: Java SE JRE subinstaller (msi) dies due to OLE compound storage reader failure on some stream (the one after _StringPool stream)
  24271  Oblivion loses sound during gameplay
  24317  3DMark Vantage needs msvcp80 unimplemented function
  24364  Enemy Territory: Quake Wars EditWorld: needs msvcr80.dll._vsprintf_p
  24523  Portal: Rendering glitches on menu screen
  24573  Freelancer: complete freeze on selecting New Game on fresh install
  24794  mytrader2009 crashes lately
  24954  Need For Speed Underground 2 installer won't start
  25232  Razor2: Hidden Skies has parts that are not rendered
  25504  League of Legends - In Launcher Store not displayed
  26028  Buitin IE crash while open a activex control from Bank of Communications (wrong instance handle when registering a class using AtlModuleRegisterWndClassInfoA/W)
  26059  Garena client GGSAFER driver crashes (needs ntoskrnl.exe PsSetLoadImageNotifyRoutine stub)
  26137  comctl32/tab tests shows an invalid read under valgrind
  26314  Champions Online: Mouse Problems
  26318  Blood 2 The Chosen: mouse-look problem
  26356  Mouse "lags" and doesn't pick up quick movements.
  26413  Construction Documents and Services Practice Program: Limited functionality
  26580  Assassin's Creed Brotherhood: unimplemented function msvcr90.dll._set_printf_count_output (purist)
  26655  Wizard101 crashes when rendering webpage
  26667  Dangerous Waters crashes on exit
  26693  Neverwinter Nights 2 installer window is obscured by installer background image
  26718  dbghelp has lots of 'parse_inlined_subroutine Unhandled Tag type' (gcc 4.7)
  26722  XP clipbrd.exe crashes on unimplemented function NDdeApi.dll.500
  26764  winecfg is picking up the wrong Windows version
  26780  Bulletstorm Demo: main menu is pink with glsl disabled
  26781  Office 2007 crashes when using the file open dialog
  26788  Vista findstr.exe crashes on unimplemented function kernel32.SetThreadPreferredUILanguages
  26795  White scrollbar background in builtin iexplore
  26811  Office 2003 installer: settings on advanced customization screen cannot be changed
  26817  ZBrush 4 crashes.
  26836  winedbg continuously emits error messages when attempting to debug a PE executable
  26838  CDBurnerXP 3.0 crashes on entering options
  26884  Qlione demo crashes on launch
  26889  wineserver loses fd_ops in debugging interface.
  26896  Chaser v1.50: mouse pointer behaves weirdly in the menu
  26899  unimplemented function ole2.dll16.RELEASESTGMEDIUM
  26902  VarDateFromStr parses yyyy-mm-dd as yyyy-dd-mm in European locales
  26940  advapi32: Windows Sysinternals Process Explorer v14.x needs OpenTraceA/W() and ProcessTrace() stubs


Changes since 1.3.18:

Akihiro Sagawa (2):
      comdlg32: Update Japanese resource.
      po: Update Japanese translation.

Alexandre Julliard (40):
      msvcr90: Fix function pointer declaration that confuses winapi_extract.
      regedit: Remove unnecessary use of class atoms.
      server: Check sharing options when duplicating an fd object.
      server: Add support for opening a new file handle from a mapping object.
      server: Store a mapping instead of a file for process dlls.
      server: Fix sharing parameters for debug event files, and don't fail if the file can't be opened.
      ws2_32: Use saner parameter names in WSAIoctl.
      ws2_32: Merge ioctlsocket implementation into WSAIoctl.
      ws2_32: Signal overlapped completion in WSAIoctl.
      winex11: Allow installing the event handler multiple times.
      server: Reuse existing file descriptor objects for duplicate file mappings.
      user32: Support creating animated icons, not only cursors.
      user32: Add support for loading animated cursors/icons from resources.
      wininet: Use an accessor function instead of directly accessing the X509_STORE_CTX structure.
      winhttp: Use an accessor function instead of directly accessing the X509_STORE_CTX structure.
      server: Also return the previous cursor position in the set_cursor request.
      user32: Only call the driver when the cursor position has really changed.
      user32: Don't start menu tracking when the owner window is invalid.
      winex11: Clip out the top-level windows when repainting the desktop.
      winetest: Cowardly refuse to submit results that have too many failed tests.
      user32: Pass a NULL rectangle in the ClipCursor entry point when clipping is reset because of focus change.
      winex11: Store a message window with the desktop when the cursor is clipped.
      winex11: Add separate helper functions for pointer grabbing and ungrabbing.
      winex11: Allow changing the clipping rectangle while the mouse is grabbed.
      server: Set the fd user when duplicating a mapping file descriptor into a new file.
      winex11: Release the clip cursor grab when the clipping window loses focus.
      winex11: Refuse to clip cursor to a 1x1 window if we don't have XInput2 support.
      dinput: Get rid of some redundant coordinate mappings.
      dinput: Add a helper function for mouse warping.
      dinput: Use a 1x1 clipping rect instead of warping the mouse in exclusive mode.
      dinput: Pass mouse messages through if the request to clip the cursor is rejected.
      winex11: Ignore MotionNotify events if we have pending RawMotion events.
      winex11: Merge consecutive RawMotion events.
      configure: Add some quoting required by autoconf 2.68.
      atl: Specify the correct instance and cursor when registering a class.
      winex11: Grab the mouse in the thread that owns the foreground window if possible.
      wineps: Add a helper function for paper size conversions.
      msvcp60: Add a stub dll.
      msvcrt: Synchronize spec files across dlls.
      msvcrt: Forward preferably to msvcr90 when there is an export with the same name.

Alistair Leslie-Hughes (2):
      mscoree: Add stub CreateDebuggingInterfaceFromVersion.
      mscoree: Implemented GetRequestedRuntimeVersion.

Amine Khaldi (2):
      comctl32: Don't draw text when the number of text lines has been set to zero.
      gdi32/test: SelectObject doesn't work with palettes, use SelectPalette instead.

Anders Jonsson (1):
      po: Update Swedish translation.

Andrew Bogott (2):
      crypt32/tests: Demonstrate that CryptStringToBinary can take arbitrary key headers and trailers.
      crypt32: Rework Base64WithHeaderAndTrailerToBinaryA and Base64WithHeaderAndTrailerToBinaryW so that they accept a wider variety of headers and trailers.

Andrew Eikum (10):
      mmdevapi: Reimplement using a driver system.
      winealsa.drv: Add mmdevapi driver.
      winecoreaudio.drv: Add mmdevapi driver.
      mmdevapi/tests: Add tests for IAudioClient::GetCurrentPadding.
      wineoss.drv: Add mmdevapi driver.
      winealsa.drv: Replace incorrect 41100 with 44100.
      winealsa.drv: Properly allocate and free the WAVEFORMATEX returned by IsFormatSupported.
      winealsa.drv: Add mapping for 64-bit floats in IAudioClient::Initialize().
      winecoreaudio.drv: Properly allocate and free the WAVEFORMATEX returned by IsFormatSupported.
      mmdevapi/tests: Add tests for IAudioClock.

Andrew Nguyen (17):
      regedit: Refactor window class initialization to a separate function.
      regedit: Remove obsolete comments in InitInstance.
      regedit: Convert regedit main code to Unicode.
      regedit: Remove all Unicode macros in main.h.
      regedit: Convert the child window code to Unicode.
      regedit: Convert the edit code to Unicode.
      regedit: Convert the frame window code to Unicode.
      regedit: Convert the hex edit code to Unicode.
      regedit: Convert the listview code to Unicode.
      regedit: Explicitly use ANSI functions in regedit helper functions.
      regedit: Convert the treeview code to Unicode.
      nddeapi: Implement the documented Network DDE functions.
      winevdm: Fix incorrect heap allocation sizes and possible out-of-bounds access in find_dosbox helper.
      krnl386.exe: Fix size calculation in GetSystemDirectory16.
      wine.inf: Add a fake 16-bit DLL for mmsystem.dll.
      wing32: Fix two typos in export names.
      msvcrt: Avoid the use of SetFilePointerEx in _lseeki64.

André Hentschel (39):
      include: Add more cv_call types.
      winedbg: Add ARM string for minidump.
      winedbg: Add more ARM registers to the map.
      ntdll: Fix setting the ExceptionAddress on ARM.
      dbghelp: Implement arm_map_dwarf_register.
      ntdll: Add implementation for RtlCaptureContext on ARM.
      ntdll: Trace context on ARM.
      winedbg: Implement be_arm_print_context.
      dbghelp: Implement arm_fetch_regname.
      dbghelp: Implement arm_fetch_context_reg.
      winedbg: Implement be_arm_get_register_info.
      winedbg: Be more verbose about what's not done.
      ntdll: Implement call_stack_handlers on ARM.
      dbghelp: Set the right ARM frame pointer.
      winecfg: Also distinguish versions by product type.
      hhcrtl.ocx: Resize search tab too.
      libport: Remove Alpha support.
      winetest: Remove Alpha support.
      ntdll: Remove Alpha support.
      server: Remove Alpha support.
      winegcc: Remove Alpha support.
      winedbg: Remove Alpha support.
      winebuild: Remove Alpha support.
      winebuild: Copy IMAGE_FILE_MACHINE_SPARC from winnt.h and use it.
      configure: Remove Alpha check.
      configure: Add ARM check.
      winedbg: Fix PC adjustment for ARM.
      ntdll: Be more generic when storing ARM context.
      ntdll: Fix usage of ContextFlags on ARM.
      ntdll: Fix usage of ContextFlags on Sparc.
      ntdll: Make sure RtlCaptureContext doesn't compile as Thumb but ARM.
      dbghelp: Implement sparc_map_dwarf_register.
      winedbg: Fill the dbg_internal_var array for ARM.
      winedbg: Copy the x86 implementation of fetch_integer for ARM.
      dbghelp: Implement rudimentary stack walk for ARM.
      winebuild: Use -mcpu option for the assembler.
      winegcc: Forward -mcpu to winebuild.
      shell32: Don't crash if selection is NULL.
      shell32: Add some selection tests.

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

Austin English (5):
      dbghelp: Get rid of a couple unused variables.
      kernel32: Add a stub for SetThreadPreferredUILanguages.
      ole2.dll16: Add a stub for ReleaseStgMedium.
      advapi32: Add OpenTraceA/W stubs.
      advapi32: Add ProcessTrace stub.

Christian Inci (1):
      crypt32: Fix CertStrToName's CERT_NAME_STR_NO_QUOTING_FLAG usage.

Damjan Jovanovic (1):
      mmsystem: Improve 16 bit mapping for MCI_WHERE/PUT/FREEZE/UNFREEZE.

David Hedberg (1):
      oleaut32: Fix CLSIDToString behaviour when passed an invalid CLSID-string.

Dmitry Timoshkov (2):
      winex11.drv: Use dialog window type again for owned popup windows.
      winex11.drv: Make sure that all relevant keyboard traces are printed in the same debug channel.

Dylan Smith (17):
      include: Add include file for d3dx9 X file interfaces.
      include: Add missing declarations to d3dx9mesh.h.
      include: Add d3dx9mesh.h X template extensions.
      include: Create header file d3dx9anim.h.
      d3dxof: Add missing checks for remaining bytes during parsing.
      d3dxof: Avoid overflowing temp buffers for large tokens.
      d3dxof: GetName can be used to just get the name length.
      d3dxof: Initialize binary member variable of xobjects.
      d3dxof/tests: Make expected value in string and comparison match.
      d3dx9: Support the option flags for D3DXCreateMesh.
      d3dx9: Implement ID3DXMesh::GenerateAdjacency.
      d3dx9/tests: Added tests for ID3DXMesh::GenerateAdjacency.
      d3dx9: D3DXCreateMesh rejects declarations with non-zero streams.
      d3dx9: Implement GetNumBytesPerVertex using the vertex declaration.
      d3dx9: Implement LockAttributeBuffer & UnlockAttributeBuffer.
      d3dx9: Implement GetAttributeTable and SetAttributeTable.
      d3dx9: Implement ID3DXMesh::DrawSubset.

Eric Pouech (3):
      services: Be sure to unlock the current database in all error cases in service_start_process.
      msvcrt: Added tests in fileops with different buffer management modes.
      msvcrt: ungetc must create a buffer, even if _IONBF has been set with setvbuf.

Francois Gouget (11):
      setupapi: Fix the SetupDiGetActualSectionToInstallEx() definition.
      mshtml: get_channelbsc_mon() is unused so remove it.
      msi: Move msi_get_cabinet_stream() up and make it static.
      d3dx9_36: Make some is_valid_xxx() functions static.
      gameux: Make some functions static.
      msvfw32: Use constants instead of hard-coded numbers for the resources.
      msvcrt: Fix compilation on systems that don't support nameless unions.
      gameux: Remove WINAPI on static functions where not needed.
      shdocvw: Fix ellipsis usage in the menu and button labels.
      wordpad: Fix ellipsis usage in the menu labels.
      appwiz.cpl: Fix ellipsis usage in the button labels.

Frédéric Delanoy (4):
      inetcpl: Update French translation.
      po: Add message contexts (and French translations) for some polysemic English translation entries.
      po: Update French translation.
      po: Fix/improve some English entries.

Gerald Pfeifer (2):
      wine: Use { } instead of ; for an empty basic block.
      winecfg: Fix use of uninitialized variable in some cases.

Hans Leidekker (3):
      mscoree: Add a stub implementation of GetRealProcAddress.
      msi: Sync with the action request instead of the action taken in msi_seltree_sync_item_state.
      mspatcha: Add a version resource.

Henri Verbeet (45):
      wined3d: Use the correct mask for depth/stencil locations in surface_load_ds_location().
      wined3d: Forward surface refcounts to the container.
      wined3d: Forward volume refcounts to the container.
      wined3d: Merge surface_gdi.c into surface.c.
      wined3d: Remove IWineD3DSurface::GetImplType() from the public interface.
      wined3d: Also update ds_current_size if there's no current DS location in surface_load_ds_location().
      wined3d: Set resource bindings to NULL before releasing them on stateblock destruction.
      wined3d: Don't bother unsetting texture resources in IWineD3DDeviceImpl_Uninit3D().
      ddraw: Verify the viewport belongs to the device in IDirect3DDeviceImpl_3_SetCurrentViewport().
      ddraw: Verify the viewport belongs to the device on execute buffer execution.
      wined3d: Decrement the vertex declaration refcount on stateblock destruction.
      ddraw: Don't bother unsetting resources on surface destruction.
      ddraw: Introduce a separate function for texture creation.
      ddraw: Unset the viewports active device in IDirect3DDeviceImpl_3_DeleteViewport().
      ddraw: Replace the viewport list with a standard Wine list.
      wined3d: Get rid of the mipmap hint code.
      ddraw: Add a separate function for surface cleanup.
      ddraw: Release the wined3d surface first in ddraw_surface_destroy().
      ddraw: Destroy the ddraw surface after the wined3d surface is destroyed.
      ddraw: Destroy the ddraw surface after the wined3d texture is destroyed.
      ddraw: Replace the light list with a standard Wine list.
      wined3d: Make sure we release the correct DC in context_update_window().
      wined3d: Get rid of wined3d_buffer_get_type().
      wined3d: Get rid of wined3d_volume_get_type().
      wined3d: Get rid of IWineD3DSurface::GetType().
      comctl32: Return if there's no current selection in TAB_EnsureSelectionVisible().
      wined3d: Remove IWineD3DSurface::PrivateSetup() from the public interface.
      wined3d: Merge surface_base.c into surface.c.
      wined3d: Either set SM3 for both vertex and fragment shaders or for neither.
      wined3d: Enable SM3 if ARB_shader_texture_lod is supported.
      wined3d: Rename "pCaps" to "caps".
      wined3d: Only invalidate the INDRAWABLE location for onscreen surfaces in surface_realize_palette().
      wined3d: Merge the IWineD3DSurface::Release() implementations.
      wined3d: Merge the IWineD3DSurface::Map() implementations.
      wined3d: Merge the IWineD3DSurface::Unmap() implementations.
      wined3d: Merge the IWineD3DSurface::PreLoad() implementations.
      wined3d: Merge the IWineD3DSurface::GetDC() implementations.
      wined3d: Merge the IWineD3DSurface::ReleaseDC() implementations.
      wined3d: Merge the IWineD3DSurface::SetMem() implementations.
      wined3d: Merge the IWineD3DSurface::SetFormat() implementations.
      wined3d: Merge the IWineD3DSurface::Flip() implementations.
      wined3d: Merge the IWineD3DSurface::BltFast() implementations.
      wined3d: Merge the IWineD3DSurface::Blt() implementations.
      wined3d: Remove COM from the surface implementation.
      wined3d: Get rid of the IWineD3DSurface typedefs.

Huw Davies (6):
      gdi32: Clip solid brush fills.
      gdi32: Make sure that pattern brush bitmap's are created with the correct physdev.
      gdi32: Add a directional bias for the case when the Bresenham error term is zero.
      rpcrt4: Handle non-conformant bogus structures.
      gdi32: Implement clipping of diagonal lines.
      gdi32: Now that we have our own Bresenham routine, we don't need the LPARAM cast.

Hwang YunSong (5):
      po: Update Korean translation.
      cmdlgtst: Update Korean resource.
      inetcpl: Update Korean resource.
      appwiz.cpl: Update Korean resource.
      po: Update Korean translation.

Jacek Caban (11):
      mshtml: Moved nsChannel initialization to separated function.
      mshtml: Better support for HTTP redirection.
      mshtml: Don't include null-byte in post data.
      shdocvw: Properly handle IEDocHost refcount.
      psapi: Forward EmptyWorkingSet implementation to kernel32.
      wininet: Use wrappers for HeapAlloc calls.
      wininet: Use wrappers for HeapReAlloc calls.
      mshtml: Added proper support for weak references.
      shdocvw: Deactivate document in InternetExplorer destructor.
      wininet: Rename WININET_NETCONNECTION to netconn_t.
      wininet: Moved OpenSSL initialization to separated function.

John Fremlin (1):
      oleau32: Stop incorrectly parsing dates in bogus YDM order in European locales.

Juan Lang (1):
      wintrust: Implement IsCatalogFile.

Ken Thomases (1):
      winecoreaudio.drv: Link against ole32 for CoTaskMemAlloc/Free.

Maarten Lankhorst (1):
      winealsa: Zero buffer, only write data if needed.

Marcus Meissner (32):
      user32: Mark internal functions with hidden visibility.
      kernel32: Mark more internal symbols as invisible.
      gdi32: Mark internal symbols as hidden.
      ntdll: Mark internal functions as hidden.
      ole32: Mark internal symbols has hidden visibility.
      crypt32: Mark internal symbols as hidden visibility.
      winmm: Mark internal symbols with visibility hidden.
      msi: Mark internal symbols as visibility hidden.
      urlmon: Mark internal functions as hidden.
      wininet: Mark internal symbols as hidden visibility.
      gdiplus: Mark internal symbols as having hidden visibility.
      comdlg32: Mark internal symbols as having hidden visibility.
      dsound: Mark internal symbols as having hidden visibility.
      rpcrt4: Mark internal symbols with hidden visibility.
      jscript: Mark internal symbols as having hidden visibility.
      secur32: Mark internal symbols with hidden visibility.
      gphoto2.ds: Mark internal symbols as hidden.
      twain_32: Mark some functions static and other internal ones hidden.
      sane.ds: Mark internal functions as hidden.
      shell32: Mark internal symbols as hidden.
      msxml3: Mark internal symbols as hidden.
      advapi32: Mark some internal symbols as hidden.
      wnaspi32: Mark internal symbols as hidden.
      d3dxof: Mark internal symbols as hidden.
      dbghelp: Mark internal symbols as hidden.
      shlwapi: Mark internal symbols as hidden.
      inetcomm: Mark internal symbols as hidden.
      dinput: Mark internal symbols as hidden.
      avifil32: Mark internal symbols as hidden.
      winhttp: Mark internal symbols as hidden.
      wintrust: Mark internal symbols as hidden.
      windowscodecs: Mark internal symbols as hidden.

Matteo Bruni (8):
      wined3d: Add two functions for GL context activation/restore.
      wined3d: Fallback to our private window when context activation fails otherwise.
      d3dx9: Print a FIXME when encountering an unknown surface format.
      d3dx9: Remove some redundant and compiler-unfriendly pixel format checking code.
      wined3d: Add missing temporary variable declaration to ARB shader backend.
      wined3d: Remove rcp special handling of 0 from the ARB shader backend.
      wined3d: Split pow instruction handling in the ARB backend.
      wined3d: Remove an unused field.

Michael Stefaniuc (10):
      d3d9: COM cleanup for the IDirect3DTexture9 iface.
      d3d9: COM cleanup for the IDirect3DVolume9 iface.
      d3d9: COM cleanup for the IDirect3DVolumeTexture9 iface.
      d3d9: Use impl_from_IDirect3DDevice9Ex instead of casting iface to object.
      d3d9: Pass an object instead of an iface to IDirect3DDevice9Impl_CreateSurface().
      d3d9: Finish the COM cleanup of the IDirect3DDevice9Ex iface.
      shell32/tests: COM cleanup in shlfolder.c.
      msxml3: COM cleanup in domdoc.c.
      shdocvw: COM cleanup in shlinstobj.c.
      shdocvw: Merge the Destroy functions into the coresponding Release functions.

Nicolas Le Cam (4):
      dxdiagn/tests: Initialize a variable and reduce its scope (valgrind).
      msctf/tests: Fix uninitialized variable warning.
      mshtml: Fix uninitialized variable warning.
      winspool.drv: Fix uninitialized variable warning.

Nikolay Sivov (4):
      inetcpl: Update Russian resource.
      po: Update Russian translation.
      comctl32/tests: Remove practically unused parameters from test functions.
      comctl32/syslink: Call default procedure directly when needed.

Peter Urbanec (1):
      dbghelp: Prevent winedbg page faults when loading some PDBs generated by the Intel C Compiler.

Piotr Caban (27):
      msvcrt: Added _resetstkoflw implementation.
      msvcrt/tests: Added fprintf tests.
      msvcrt: Copy and reorganize printf implementation.
      msvcrt: Use callback based printf in cprintf functions family.
      msvcrt: Use callback based printf in fprintf functions family.
      msvcrt: Use callback based printf in sprintf functions family.
      msvcrt: Removed pf_vnsprintf internal function.
      msvcrt: Added sprintf_p_l implementation.
      msvcrt: Print all integers using pf_integer_conv function.
      msvcrt: Don't use additional buffer in pf_integer_conv.
      msvcrt: Use pf_integer_conv when displaying pointers.
      msvcrt: Remove wchar_t/char conversions needed for pf_integer_conv.
      msvcrt: Added wcsrtombs implementation.
      msvcrt: Added _set_printf_count_output and _get_printf_count_output implementation.
      msvcrt: Updated spec file.
      msvcp90: Move basic_string<char>:swap implementation.
      msvcp90: Added basic_string<char> operator< implementation.
      msvcp90: Added basic_string<char> find implementation.
      msvcp90/tests: Added basic_string<char> find tests.
      msvcp90: Added basic_string<char> operator +=(char) implementation.
      msvcp90: Added basic_string<char> at implementation.
      msvcp90: Added basic_string<char> operator[] implementation.
      msvcp90: Added basic_string<char> resize implementation.
      msvcp90: Added basic_string<char> constructor implementation (cstr, len).
      msvcp90: Added basic_string<char> clear implementation.
      msvcp90: Added basic_string<char> operator+=(char*) implementation.
      msvcp80: Updated spec file.

Rico Schüller (15):
      d3dx9: Fix d3dx9_parse_effect_typedef for D3DXPC_STRUCT.
      d3dx9: Implement ID3DXBaseEffect::GetTechniqueDesc().
      d3dx9: Implement ID3DXBaseEffect::GetParameter().
      d3dx9: Implement ID3DXBaseEffect::GetTechnique().
      d3dx9: Implement ID3DXBaseEffect::GetTechniqueByName().
      d3dx9: Fix ID3DXEffect*::GetVectorArray() forward.
      d3dx9: Implement ID3DXBaseEffect::GetPassDesc().
      d3dx9: Implement ID3DXBaseEffect::GetPass().
      d3dx9: Implement ID3DXBaseEffect::GetPassByName().
      d3dx9: Implement ID3DXBaseEffect::GetParameterByName().
      d3dx9: Implement ID3DXBaseEffect::GetParameterDesc().
      d3dx9: Implement ID3DXBaseEffect::GetParameterElement().
      d3dx9: Improve ID3DXBaseEffect::GetParameter().
      d3dx9: Improve get_parameter_by_name().
      d3dx9: Fix flags for annotation structures.

Stefan Dösinger (4):
      wined3d: Scale the depthbias factor by the depth buffer's depth.
      d3d8: Don't reapply the old DS if SetDepthStencilSurface failed.
      d3d8: Add more tests for NULL render targets.

Thomas Mullaly (1):
      wininet: Prevent a race condition which results in handles being leaked.

Tim Hentenaar (1):
      user32: GetTabbedTextExtent() returns non-zero value when nCount == 0.

Vincent Povirk (2):
      windowscodecs: Handle broken TIFF files without a RowsPerStrip tag.
      windowscodecs: Treat samples as unspecified if there's no ExtraSamples tag.

Wolfgang Walter (1):
      kernel32: Fix TRACE output: IXON and IXOFF are swapped.

Łukasz Wojniłowicz (1):
      po: Update Polish translation.

Alexandre Julliard
[email protected]