Wine Announcement

The Wine development release 7.0.1 is now available.

What's new in this release:
  - Various bug fixes
  - Translation updates

The source is available at:

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 7.0.1 (total 32):

 - #12732  Nota Bene crashes on install
 - #44202  undname.c fails to parse symbols with rvalue-reference semantics '&&'
 - #45916  x64dbg fails to load debuggee, needs ThreadScheduler_ScheduleTask
 - #50352  Maximum sockets per process is set very low
 - #50370  Gothic 1 doesn't start correctly when screen resolution of the game matches display resolution
 - #50433  'MsiBreak' custom action debugging aid should use custom action's name from 'CustomAction' table (currently uses 'Target' field)
 - #50869  Killing Wine process in Wine 6.5 doesn't terminate the application because of the new use of start.exe
 - #51163  WinOffice Pro 5.3 stops after splashscreen, needs WMI class SoftwareLicensingProduct
 - #51619  advapi32:registry fails in Wine because French & German timezone name translations are too long
 - #51900  regression: REAPER scrollbars flash between themed and non-themed
 - #52163  postgresql-9.3 installer expects scrrun:filesys_GetTempName to return filename with TMP suffix
 - #52298  Opening PPT with Freeoffice Presentations crashes on unimplemented function ole32.dll.OleConvertIStorageToOLESTREAMEx
 - #52426  BCryptSignHash mishandles empty arguments
 - #52434  Light Blue theme has rendering errors in tree views
 - #52436  In Light Blue theme, checkable toggle buttons (BS_AUTOCHECKBOX) look unchecked when hovered
 - #52446  Normal dlls with native subsystem id are no longer processed when importing system dlls with uppercase names
 - #52476  QuickLOAD (VB5 app) input value is changed by factor 10
 - #52494  shell32 progman_dde tests crash if run immediately after prefix creation
 - #52510  alt:V mod for Grand Theft Auto V fails due to missing concrt140._Byte_reverse_table@details@Concurrency@@3QBEB
 - #52562  advapi32:registry fails in Wine because some French timezone name translations are too long
 - #52581  Internet MIDI crashes with Light Blue theme enabled
 - #52583  ApiSetView does not display export ordinals correctly
 - #52616  SteelSeries GG installer crashes on unimplemented function setupapi.dll.SetupQueryInfVersionInformationW
 - #52618  32-bit EXEs do not launch from build dir on macOS 10.14 in WOW64
 - #52626  MahjongSoul needs unimplemented function combase.dll.RoSetErrorReportingFlags
 - #52667  DTS Master Audio Suite can't select save file location when wine's "Light" theme is used
 - #52679  Anno 1602 / 1602 A.D. graphics too dark / black
 - #52704  FreeHand 9 demo: invalid handle exception (0xc0000008) when attaching uxtheme.dll
 - #52787  Invalid function prototype for "RegisterUserApiHook" when compiling for C++
 - #52953  GuiPy crashes on unimplemented function xmllite.dll.CreateXmlReaderInputWithEncodingCodePage
 - #53034  Lazarus: menu text disappears under mouse if light theme is enabled
 - #53430  urlmon:url fails due to unexpected redirection


Changes since 7.0:

Alex Henrie (14):
      explorer: Only try to destroy the IShellWindows object if it exists.
      tzres: Inform translators of 31-character limit.
      po: Update Catalan translation.
      msi: Fix memory leak in get_fusion_filename (Coverity).
      winhttp: Fix memory leak on error path in WinHttpCrackUrl (Coverity).
      adsldp: Fix memory leak on error path in search_ExecuteSearch (Coverity).
      conhost: Fix memory leak on error path in create_screen_buffer (cppcheck).
      dbghelp: Fix memory leak on error path in dwarf2_read_range (cppcheck).
      ws2_32: Fix memory leak on error path in get_local_ips (cppcheck).
      ws2_32: Fix memory leaks on error paths in unix_gethostby* (scan-build).
      sane: Fix memory leak in create_item (Coverity).
      winspool: Fix memory leaks on error path in DeviceCapabilitiesA (Coverity).
      shell32: Fix sizeof argument in DoPaste (Coverity).
      mciwave: Fix bad free in MCI_SendCommandAsync (Coverity).

Alexandre Julliard (12):
      user.exe: Make sure that the thunk selector doesn't get freed.
      makefiles: Disable printf format warnings for non-PE msvcrt modules.
      readme: Mention Gitlab.
      kernel32/tests: Fix affinity test when there are too many CPUs.
      ntdll/tests: Fix affinity test when there are too many CPUs.
      secur32/tests: Update for new WineHQ certificate.
      urlmon/tests: Run tests against the gitlab server to avoid redirects.
      webservices/tests: Mark tests that fail on 64-bit as todo.
      wininet/tests: Update WineHQ certificate.
      makedep: Make the handling of install rules more generic.
      makefiles: Add install-test target to install winetest.exe.
      winetest: Don't require an email if we have a URL.

Alistair Leslie-Hughes (1):
      msado15: Return valid object in Recordset::Clone.

Andrey Gusev (1):
      d3d11: Implement the ID3DUserDefinedAnnotation interface.

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

Bastien Orivel (1):
      ws2_32: Fix setsockopt(TCP_NODELAY) when optlen is less than 4.

Ben Shefte (1):
      ntdll: Use case insensitive comparison in is_import_dll_system().

Bhavesh Davda (1):
      wined3d: Add GPU information for NVIDIA Ampere A10 and AMD Radeon Pro V620 GPUs.

Brandon Moore (1):
      msadpm: Stop decoding instead of crashing for invalid adpcm data.

Brendan Shanks (1):
      makefiles: On macOS, use @rpath instead of @loader_path when building Unix libs.

David Kahurani (1):
      oleaut32: Do not skip the first decimal digit in VarParseNumFromStr().

Dmitry Timoshkov (2):
      ieframe: Clear a being invalidated history entry.
      ieframe: Initialize new history log entry.

Eric Pouech (3):
      start: Wrap child inside a job so it gets killed when start.exe terminates.
      include/msvcrt: Redefine towlower* & towupper* with wint_t types.
      msacm32: Use extended structure definition for driver configuration.

Fabian Maurer (4):
      printui: Use LocalFree for memory allocated by LocalAlloc (Coverity).
      mfplay: Prevent usage of uninitialized pointer in error case (Coverity).
      mfplat: Prevent use after free (Coverity).
      shell32: Prevent user after free in error case (Coverity).

Floris Renaud (1):
      po: Update Dutch Translation.

François Gouget (8):
      po: Fix the French translation of 'code page'.
      po: Fix backslash duplication in a French translation.
      po: Remove a space before a linefeed in the French translation.
      po: Remove spaces before linefeeds in the Spanish translation.
      po: Remove a space before a linefeed in the Chinese translation.
      po: Fix an accelerator shortcut in the Norwegian Bokmål translation.
      inetmib1: Avoid overflows in IPv4 address comparisons.
      inetmib1: Fix the IPv4 address network order for comparisons.

Gabriel Ivăncescu (3):
      ddraw: Use WINED3D_SWAPCHAIN_NO_WINDOW_CHANGES only if window is not in foreground.
      jscript: Handle NULL return pointers in all constructors.
      mshtml: Fix leak on failure in return_nsstr.

Gerald Pfeifer (1):
      iphlpapi: Zero-init prefix_len to avoid a compiler warning.

Gijs Vermeulen (1):
      setupapi: Add SetupQueryInfVersionInformationA/W stub.

Giovanni Mascellani (3):
      winegstreamer: Do not block forever if EOS races with command queue.
      mfplat: Avoid a race condition when releasing a tracked sample.
      mfmediaengine: Fix a memory leak.

Hans Leidekker (1):
      msi: Use custom action name for MsiBreak handling.

Henri Verbeet (2):
      d3d11/tests: Add some tests for ID3DUserDefinedAnnotation.
      wined3d: Add GPU information for NVIDIA Tesla T4.

Kevin Puetz (1):
      winegcc: --out-implib needs to propagate -m32/-m64 to winebuild.

Lauri Kenttä (2):
      po: Update Finnish translation.
      readme: Update Finnish translation.

Louis Lenders (2):
      wbemprox: Add some properties of SoftwareLicensingProduct class.
      ole32: Add stub for OleConvertIStorageToOLESTREAMEx.

Martin Storsjö (1):
      ntdll: Zero-initialize the syscall_frame used for starting threads on ARM/ARM64.

Matteo Bruni (1):
      combase: Add RoSetErrorReportingFlags() stub.

Michael Stefaniuc (3):
      tools: Get the ANNOUNCE bug list from the stable-notes git notes.
      gitlab: Import the gitlab CI from the master branch (devel tree).
      tools: Import make_announce changes from the devel tree.

Mohamad Al-Jaf (1):
      hid: Implement HidD_GetPhysicalDescriptor.

Nikolay Sivov (4):
      comctl32/listview: Initialize subitem text buffer before drawing each subitem.
      uxtheme: Fix double free on registry key handle.
      xmllite/reader: Implement CreateXmlReaderInputWithEncodingCodePage().
      evr/sample: Avoid a race condition when releasing a tracked sample.

Paul Gofman (1):
      concrt140: Add ?_Byte_reverse_table@details@Concurrency@@3QBEB data export.

Piotr Caban (2):
      ucrtbase: Add support for r-value demangling in unDName.
      msvcr100: Improve ThreadScheduler_ScheduleTask_loc stub.

Piotr Kleski (1):
      bcrypt: Return BCryptSignHash len when only output is NULL.

Robert Wilhelm (2):
      scrrun: Add test for GetTempName.
      scrrun: Generate temp name with tmp suffix.

Rémi Bernon (1):
      mf: Handle MESourceSeeked and MEStreamSeeked state change events.

Santino Mazza (2):
      ncrypt/tests: Test key import of an rsa key.
      ncrypt: Make NCryptOpenStorageProvider return a valid stub pointer.

Saulius Krasuckas (1):
      ntdll: Check __WINE_PE_BUILD instead of compiler macros.

Zebediah Figura (12):
      ws2_32/tests: Add tests for WSAStartup().
      ws2_32: Always fill the WSADATA structure in WSAStartup().
      ws2_32: Cap the negotiated winsock version to 1.1 or 2.2.
      ws2_32: Return 32767 or 0 in the iMaxSockets field.
      ws2_32: Return 65467 or 0 in the iMaxUdpDg field.
      ws2_32: Return WSAEFAULT instead of WSAEINVAL from WSAStartup() if "data" is NULL.
      configure: Fix the check for CAPI support.
      d3dx9: Don't mark annotation variables as dirty.
      winegstreamer: Release stream_cs on error in stream_thread().
      setupapi: Avoid leaking subKey in SETUPDI_AddDeviceInterfaces().
      server: Allocate enough space for the backslash in dup_nt_name() (Valgrind).
      tiff: Explictly link to zlib.

Zhiyi Zhang (14):
      user32/tests: Test painting standard scroll bars in hovered state.
      user32: Draw standard scroll bars in hovered state only when they were previously painted by DefWinProc().
      comctl32/button: Use pressed state when a pushlike checkbox or radio button is checked and hovered.
      comctl32/treeview: Do not draw client edge without WS_EX_CLIENTEDGE.
      light.msstyles: Do not use transparent treeview parts.
      uxtheme/tests: Add IsThemePartDefined() tests.
      uxtheme: Search parts of any state in IsThemePartDefined().
      light.msstyles: Add Menu stub class.
      user32/tests: Test NUMCOLORS for display DCs.
      win32u: Return -1 for NUMCOLORS with 8-bit display DCs.
      include: Avoid a C++ keyword for RegisterUserApiHook().
      light.msstyles: Use stretch sizing type for scroll bar arrow button background.
      uxtheme: Support parsing menu class.
      light.msstyles: Add Menu parts.