The Wine development release 1.7.30 is now available.

What's new in this release (see below for details):
  - More support for fonts in DirectWrite.
  - Improved ATL thunk support.
  - A few more C runtime functions.
  - Regedit import/export fixes.
  - Various bug fixes.

The source is available from the following locations:

  http://prdownloads.sourceforge.net/wine/wine-1.7.30.tar.bz2
  http://mirrors.ibiblio.org/wine/source/1.7/wine-1.7.30.tar.bz2

Binary packages for various distributions will be available from:

  http://www.winehq.org/download

You will find documentation on http://www.winehq.org/documentation

You can also get the current source directly from the git
repository. Check http://www.winehq.org/git for details.

Wine is available thanks to the work of many people. See the file
AUTHORS in the distribution for the complete list.

----------------------------------------------------------------

Bugs fixed in 1.7.30 (total 50):

   7920  Post provider setup of WMI core 1.5 installer needs advapi32.dll.WmiOpenBlock stub
  13593  Microsoft Office 95 installer fails while configuring ODBC drivers.
  17042  Microsoft OneNote 2007 trial crashes because richedit doesn't implement ITextDocument
  17796  Citavi: No network access (wininet.dll InternetGetConnectedStateExW returns incorrect network connection state)
  18567  Universe at War - Reports installation failed but seem to install just fine
  18832  compiling with -fprofile-generate fails on sfnt2fnt due to hidden symbol
  21880  NHL 2009 Cannot be launched
  21945  regedit export: unmatched REG_SZ quote in *.reg files
  23293  Pippa Funnell - Secrets of the Ranch fails to start with X error (GLX?)
  24086  VirtualDub: invisible text in some dialogs
  24537  TimezAttack Demo has no sound, hangs after intro movie
  25415  Star Trek Armada II: sound is not smooth
  25418  Strong Bad Episode 5 crashes at intro movie without native d3dx9_36
  25433  Mount&Blade-Warband crashes after intro videos in Ubuntu 10.04LTS
  25514  Teamviewer 6 client: execute in loop and it opens an infinite number of windows
  25577  Microsoft Flight Simulator X: Demo/Deluxe edition, crashes on exit
  25590  PhysX: Uninstaller says that it installs app instead of removing it
  25622  Miranda IM and TabSRMM
  25624  League of Legends launcher wont open
  25638  Bryce 7 crashes
  25665  Cool Record Edit: Incorrect window appearance
  25683  Quicktime Player buttons not visible
  27026  Regedit.exe - missformed data in an exported REG-file
  29292  "The Settlers - Rise of Cultures" - directx9 error
  32288  The Settlers 7 performance is really bad in the initial secuence
  33528  GTA2 hangs up during gameplay
  33873  Photoshop CS2 fails to "save as"
  34429  Farming simulator demo is dark (opengl game)
  34500  Project 64 runs slow when compared to wine 1.4
  35578  Multiple applications crash on install/startup ('COMPUTERNAME' environment variable not present)(Mentor Pads Free Viewer, Flightgear 3, MaxQuant)
  36323  valgrind shows a possible leak in riched20/tests/txtsrv.c
  36551  Bittorrent Sync needs bcrypt.dll.BCryptGetProperty
  37054  Everquest needs d3dx9_30.dll.D3DXCpuOptimizations
  37118  PVS-Studio Error: Typos
  37119  PVS-Studio Error: Cascade of conditional operators
  37121  PVS-Studio Error: String length changing
  37122  PVS-Studio Error: One counter for two loops
  37123  PVS-Studio Error: Double type conversion
  37124  PVS-Studio Error: Difference of unsigned numbers
  37126  PVS-Studio Error: Printing the result of identical functions
  37127  PVS-Studio Error: Unreliable tests
  37164  Adobe Creative Cloud crashes on launch with WinVer set to 'Windows 7' (needs IDWriteFactory::CreateCustomFontCollection method implementation)
  37207  FreeOrion needs msvcp100.dll.?iostream_category@std@@YAABVerror_category@1@XZ
  37394  PicPick 3.4.1 can't start
  37406  Texture corruption when changing graphic options (Eve Online, Sims 3, Diablo 3)
  37413  login to https:pos.uhaul.net broke in wine 1.7.29
  37430  Need for Speed Hot Pursuit(2010) Images and Text get blurred after selecting an event with Wine 1.7.29.
  37431  Incorrect handling of SetBkMode(dc, TRANSPARENT) with hatch brush
  37437  RIM BlackBerry Device Manager crashes due to unimplemented function KERNEL32.dll.CancelTimerQueueTimer
  37471  iexplore ScriptBSC_stop_binding crash

----------------------------------------------------------------

Changes since 1.7.29:

Alexandre Julliard (10):
      iphlpapi: Avoid an uninitialized variable warning.
      gdi32: Check the hatch masks instead of the rop masks for the null and mask optimization case.
      xcopy: Avoid a potential out of bounds access.
      msvcp90: Add inline wrappers for the memcpy_s/memmove_s/mbstowcs_s functions.
      comdlg32: Use PathAddBackslash to avoid a compiler warning.
      write: Always append a backslash to the system directory.
      kernel32/tests: Use a pointer instead of an array to make gcc happy.
      cmd: Add a helper function to check if a path ends with a backslash.
      wininet/tests: Fix a test failure on Windows.
      crypt32: Add a root store path for Android.

Alistair Leslie-Hughes (2):
      dpnet: Implement IDirectPlay8Address GetComponentByName.
      dplayx: Fix some crashes and wine_todo's.

Amine Khaldi (5):
      strmbase: Remove unused TransformFilter_Vtbl (Clang).
      strmbase: Remove unused InputPin_Vtbl, OutputPin_Vtbl and impl_BaseInputPin_from_BasePin() (Clang).
      kernel32: Remove some unused variables (Clang).
      d3dxof: Remove unused IDirectXFileObject_Vtbl (Clang).
      rpcrt4/tests: Remove unused if3_table and if4_table (Clang).

André Hentschel (9):
      bcrypt: Add stub for BCryptGetProperty.
      d3dx9_30: Add stub for D3DXCpuOptimizations.
      urlmon/tests: Clarify ok() condition.
      winedump: Ensure function order in a printf (PVS-Studio).
      kernel32: Set COMPUTERNAME environment variable.
      gdiplus: Adjust identical conditions (PVS-Studio).
      gdi32: Fix typo in a condition (PVS-Studio).
      wrc: Remove duplicate code (PVS-Studio).
      comdlg32: Remove duplicate code (PVS-Studio).

Aric Stewart (1):
      imm32: Handle keyboard changes when processing input.

Austin English (4):
      advapi32: Add a stub for WmiOpenBlock.
      kernel32: Add a stub for CancelTimerQueueTimer.
      ndis.sys: Add a stub dll.
      ntoskrnl.exe: Add ObQueryNameString stub.

Bruno Jesus (20):
      winecfg: No need to cut a backslash if it does not exist.
      iphlpapi: Fix a one counter for two loops error (PVS-Studio).
      wsock32: Clarify cast operation (PVS-Studio).
      msi: Remove duplicate if condition.
      wininet: Add more tests to InternetGetConnectedStateEx.
      advapi32/tests: Add a test for enumerating a registry key without setting it.
      wininet: Fix InternetGetConnectedStateEx[A|W].
      regedit: Append exported strings using the correct size.
      regedit: Allow importing strings with escaped NULL.
      regedit: Allow importing/exporting strings with '\r'.
      advapi32/tests: Fix copy & paste issue (Cppcheck).
      advapi32/tests: Remove dead assignment (Cppcheck).
      advpack/tests: Remove dead assignment (Cppcheck).
      atl: Remove dead assignment.
      atl: Remove dead assignment.
      comctl32: Remove a dead assignment in comctl32undoc.c (Cppcheck).
      comctl32: Avoid magic numbers.
      comctl32: Remove dead assignment in tooltips.c (Cppcheck).
      comctl32/tests: Remove dead assignment in comboex.c (Cppcheck).
      comctl32/tests: Remove a dead assignment from dpa.c (Cppcheck).

Catalin Patulea (2):
      kernel32/tests: Add test for FormatMessage with HRESULT.
      kernel32: Handle win32 hresult in FormatMessage.

Daniel Lehman (1):
      wininet: Remove custom port handling in HTTP_HandleRedirect.

David Heidelberger (1):
      winedbg: List Dwarf2 GNU extensions as TODO to workaround spam in debug.

Hans Leidekker (4):
      secur32/tests: Switch requested protocol from SSL3 to TLS1.
      msi: Support more transform validation flags.
      msvcrt: Implement _snprintf_l.
      msi: Format registry values before interpreting value type.

Hao Peng (1):
      mlang: Add gbk to Chinese Simplified codepage.

Huw D. M. Davies (3):
      gdiplus: Blend in the background colour.
      user32: Merge the blitting of the centred and non-centred cases.
      comctl32: Enable the appropriate wizard buttons before sending DM_SETDEFID.

Iván Matellanes (4):
      msvcrt: Added _fflush_nolock implementation.
      msvcrt: _filbuf should not lock any file.
      msvcrt: Added _fgetc_nolock implementation.
      msvcrt: Added _fgetwc_nolock implementation.

Jacek Caban (2):
      mshtml: Return S_OK in IHTMLDocument3::recalc.
      mshtml: Don't call stop_binding in error cases in start_binding.

Jactry Zeng (4):
      prntvpt: Add stub dll.
      riched20: Fix a leak.
      riched20: Add COM aggregation support for IRichEditOle.
      riched20: Add IID_IRichEditOle and IID_ITextDocument support for ITextServices::QueryInterface.

Jonathan Vollebregt (6):
      reg/tests: Add negative DWORD tests.
      reg/tests: Add REG_EXPAND_SZ tests for reg add.
      reg/tests: Add REG_MULTI_SZ tests for reg add.
      reg/tests: Add REG_BINARY tests for reg add.
      reg/tests: Add REG_DWORD_BIG_ENDIAN tests for reg add.
      reg/tests: Test key formats.

Ken Thomases (1):
      winemac: Don't allow double-clicks in the content area to zoom the window.

Matteo Bruni (1):
      wined3d: Check ARB_TEXTURE_COMPRESSION_RGTC for applying the correct fixup.

Michael Stefaniuc (13):
      oleaut32: Clarify cast operation (PVS-Studio).
      avifil32: Simplify comparing two unsigned ints (PVS-Studio).
      msvfw32: IDC_ARROW is already an int resource (PVS-Studio).
      taskmgr: Fix messed up indentation of an if statement (PVS-Studio).
      dmusic: Remove duplicated interface ID checks (PVS-Studio).
      usp10: Removed unused variable (PVS-Studio).
      oleaut32/tests: Remove always true ok conditions (PVS-Studio).
      crypt32/tests: Don't compare the result to itself (PVS-Studio).
      wined3d: Remove no-op min() with magic number (PVS_Studio).
      d3drm: Pass the correct pointer to IDirectXFileData_GetData (PVS-Studio).
      comdlg32: Use the proper macro to create an int atom (PVS-Studio).
      riched20: SUCCEEDED() is already a BOOL (PVS-Studio).
      wininet: Simplify while loop conditions (PVS-Studio).

Nikolay Sivov (31):
      dwrite: Store factory pointer gdiinterop was created from.
      dwrite: Implement CreateFontFromLOGFONT() on top of system font collection.
      dwrite: Implement CreateFontFaceFromHdc().
      dwrite: Store registered collection loaders in a list.
      dwrite: Store registered file loaders in a list.
      dwrite: Implement GetInformationalStrings().
      dwrite: Remove unused parameter.
      dwrite: Some tests for reused fontface instances.
      dwrite/tests: Create separate isolated factory for each test.
      dwrite/tests: Some tests for local font file loader.
      dwrite/tests: Fix some test failures.
      dwrite: Cache fontface instances at factory level.
      dwrite: Use helpers to search through loaders lists.
      dwrite: Pass raw NAME table pointer to table reading code.
      dwrite: Implement custom font collections.
      dwrite/tests: Fix recently inroduced test failure.
      dwrite: Block attempts of registering local file loader.
      dwrite: Initialize allocation size for a family before using it.
      dwrite: Implement GetFontFromFontFace().
      dwrite: Allow null arguments in opentype_get_font_table().
      dwrite: Support Mac platform id and some of its encodings when reading 'name' table.
      dwrite: Use API-defined type for family count.
      dwrite: Allow for a weight difference in GetFirstMatchingFont().
      dwrite: Store simulations flags at font instance level.
      dwrite: Set oblique simulation in GetFirstMatchingFont() when appropriate.
      dwrite: Reimplement ConvertFontFaceToLOGFONT().
      dwrite: Properly null-terminate name string when converting to WCHAR.
      dwrite: Implement system font collection as any other font collection.
      dwrite: Turn fixme to trace in Analyze().
      dwrite: Store pixels per dip value for a render target.
      msxml3: Return S_FALSE in getNamedItem() of PI node.

Piotr Caban (4):
      msvcp100: Add std::iostream_category() implementation.
      msvcp100: Fix basic_string class definition.
      imm32: Return FALSE on WM_MSIME_* messages in ImmIsUIMessage.
      user32: Show that IME window class is one of builtin classes.

Sebastian Lackner (8):
      ntdll: Add support for ATL thunk 'MOV this,ecx; JMP func'.
      ntdll: Add support for ATL thunk 'MOV this,edx; MOV func,ecx; JMP ecx'.
      ntdll: Add support for ATL thunk 'MOV this,ecx; MOV func,eax; JMP eax'.
      ntdll: Add support for ATL thunk 'POP ecx; POP eax; PUSH ecx; JMP 4(%eax)'.
      kernel32/tests: Add test for GetProcessDEPPolicy.
      kernel32: Implement GetProcessDEPPolicy.
      kernel32/tests: Avoid crashing when exception info[0] contains wrong value.
      kernel32/tests: Avoid test failures on systems where hardware DEP is not supported.

Stefan Dösinger (11):
      d3d9/tests: Add style and size tests for D3DCREATE_NOWINDOWCHANGES.
      d3d8/tests: Update create_device to match d3d9.
      d3d9/tests: Use create_device in test_fpu_setup (v2).
      d3d9/tests: Use create_device for test_swvp_buffer.
      d3d8/tests: Use create_device for test_fpu_setup.
      d3d8/tests: Use create_device in test_swvp_buffer.
      d3d8/tests: Skip unsupported resources in test_resource_type.
      d3d9/tests: Skip unsupported resources in test_resource_type.
      wined3d: Remove texture locations after downloading all subresources.
      wined3d: Update Nvidia driver versions.
      wined3d: Update AMD drivers.

Vincent Povirk (4):
      authz: Stub AuthzInstallSecurityEventSource.
      msvcrt: Implement _strtoul_l.
      msvcrt: Implement _wcsnicmp_l.
      gdiplus: Fix error when drawing from a rectangle outside bitmap bounds.

YongHao Hu (1):
      msvcp90: Add ostream::operator<<complex implementation and tests.

--
Alexandre Julliard
julliard@winehq.org
