Wine 1.7.20 released
Posted on: 06/14/2014 07:00 AM

The Wine development release 1.7.20 is now available

Wine 1.7.20 released

What's new in this release (see below for details):
- X11 drag & drop fixes.
- A few more C/C++ runtime functions.
- Fixes for various memory issues found by Valgrind.
- Some OLE storage fixes.
- 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.7.20 (total 88):

9616 Pronunciation Patterns 3 doesn't start
12371 Neural Noise Synthesizer (Thinstall virtualization wrapped app) fails to launch (GetEnvironmentVariableA/W needs to respect size limits for temp buffer allocation)
13432 ZDaemon: freezes when exiting launcher
13459 Oberon game launcher (incl. buttons) does not work
13719 E-texteditor installs but freezes on run
14693 Program halts when on another virtual desktop
14718 Rappelz will not update itself
14873 Voipstunt crashes trying to connect to server
15417 Easy68k: Exiting without closing help window causes page fault.
16127 Mouse Buttons do not work in BBC Basic For Windows 5.80a
17035 RPG Maker XP 1.x: Script editor selects complete script when program gets focus
18195 Medal of honor pacific assault: In bootcamp there are many bush glitches
19048 RegCleaner assertion failure in LISTVIEW_GetItemT()
20077 User Interface of RPG Maker XP 1.x is unusable and freezes
20485 Uninitialised memory reference in FTP_DoPassive
20630 Services written in Delphi 6: impossible to start by "net start" command
20929 IDGET - Doesn't show disc drive
22494 Microsoft Office 2007 cannot be activated
22877 RegCleaner crashes on start
23696 oxygen xml editor license page does not appear in web browser
24302 STALKER: Shadow of Chernobyl install reports incorrect hard disk space
24513 Background in VirtuaGirl is always black
24593 Livestream Procaster: login fails
24594 Livestream Procaster: Procaster's game streaming mode doesn't work due to a "DirectX Test Error"
25088 Crysis Warhead 1.1.x does not start
25799 GFWL (Games For Windows Live) 3.x client crashes at startup
26402 Cain and Abel: Crashes in libfreetype/libc
27433 mass effect 2 heisencrash on non-smp system
28108 urlmon: url.ok occasional test failure: unexpected call OnProgress_SENDINGREQUEST
28133 twain_32/dsm.ok crashes occasionally?
28710 ws2_32: sock.ok reads/writes invalid memory during async_getservbyport?
28821 kernel32/tests/time.ok: uninitialized memory read in GetCalendarInfoA
28822 mmdevapi/tests/capture.ok fails sometimes under valgrind?
28827 Digsby (PIM) won't start
28835 rpcrt4/tests/rpc_protseq.ok fails under valgrind
28865 Ski Resort Tycoon 2 crashes on startup
29430 RPG Maker VX crashes during startup
29662 IBankWizard.msi crash at the end of installing
30209 Exchange file manager (.NET 3.5 app) crashes on startup
30398 Word / Excel 2007: crashes while opening or saving documents
30484 rFactor 2 launcher UI does not detect machine setup
30601 Grand Theft Auto: San Andreas crashes on startup
31177 SugarSync (sugarsyncmanager) crashes on startup
31221 Acrobat 8 page one is full of artifacts
31225 SA-MP (Multiplayer Online game mod for Grand Theft Auto: San Andreas): chat and scrollbar offscreen, text invisible
31332 Project64: about page fails to render
31532 Grand Theft Auto: San Andreas does not work on 75Hz
32353 Grand Theft Auto: San Andreas crashes on new game
32388 Mezzmo shows runtime errors while starting
32545 TaxACT 2012 crashes at startup
32800 construct2 crashed on open file dialog
32849 Path Of Exile sound glitch
33882 gtags (GNU GLOBAL) 6.2.x crashes on indexing of large projects
34646 Virtual DJ v7.4 crashes on startup
35426 RPG Maker VX Runtime: games crash on startup
36002 ImpotRapide 2013 (.NET 4.0 app) crashes on unimplemented function msvcp110.dll.?gcount@?$basic_istream@DU?$char_traits@D@std@@@std@@QBE_JXZ
36065 PunkBuster service tests fail (DeleteService should mark active services in SCM database as pending for deletion)
36139 msi/db test crash on wine compiled with gcc-4.9.0
36153 Borderlands 2 mouse focus no longer works properly
36377 League of Legends crashes at game start with wine 1.7.18
36432 valgrind shows a possible leak in shell32/tests/recyclebin.c
36459 ICQ 7.x 'ServiceStarter.exe' tool crashes during post-install step
36477 Nikon Message Center 2 (part of Nikon Capture NX2) crashes on startup (needs support for 'CIM_Processor' WMI class)
36481 CFNetworkCopySystemProxySettings and kCFNetworkProxiesProxyAutoConfigURLString are unavailable
36482 Raiden Legacy (DotEmu) shows black screen after launch
36491 Theatre of War 3: Korea Demo hangs on start
36496 Dragon NaturallySpeaking 12.x crashes on unimplemented function msvcr100.dll._wcslwr_l
36505 DynDNS Updater 4.1.6 crashes on startup
36507 valgrind shows a definite leak in dpnet/tests/server.c
36518 Selecting character mission crashes Star Wars Rebellion 1.00
36526 When Delphi programs (e.g. InnoSetup) start, their global variables are corrupt.
36540 3dmark 2003 needs msvcp70.dll.?begin@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE?AV?$_Ptrit@DHPADAADPADAAD@2@XZ
36541 Prince of Persia (2008) launcher fails to start, crashes in msvcrt
36573 valgrind shows uninitialized memory use in shlwapi/tests/path.c
36580 valgrind shows two definite leaks in user32/tests/cursoricon.c
36584 valgrind shows a leak in winmm/tests/mci.c
36588 valgrind shows a definite leak in userenv/tests/userenv.c
36590 valgrind shows a definite memory leak in usp10/tests/usp10.c
36591 valgrind shows uninitialized memory use in vbscript/tests/run.c
36602 valgrind shows a possible leak in wininet/tests/urlcache.c
36603 valgrind shows uninitialized memory use in winspool.drv/tests/info.c
36604 valgrind shows two definite leaks in winspool.drv/tests/info.c
36605 valgrind shows a definite leak in wintrust/tests/softpub.c
36627 Games For Windows Live 2.0.0687.0 (PANORAMA_V2.00_RTM.090421-2351) needs MSASN1.dll
36661 valgrind shows an unintialized write in ws2_32/tests/sock.c: test_completion_port()
36667 VBScript doesn't handle numbers in exponential form (e.g. 1e2)
36698 AudibleManager 5.5.x crashes at startup
36715 3dmark 2003 needs msvcp70.dll.??8std@@YA_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@PBD@Z


Changes since 1.7.19:

Akihiro Sagawa (6):
oleaut32/tests: Use a boolean constant for BOOL argument.
oleaut32/tests: Test UnRegisterTypeLib surely deletes registry keys.
oleaut32: Delete opposite side keys on UnRegisterTypeLib.
kernel32: Avoid uninitialised value read in GetCalendarInfoA.
kernel32: Return correct buffer size when returning DBCS characters.
user32: Don't close a popup menu when clicking a sub-menu parent item twice.

Alexandre Julliard (4):
vbscript: Avoid using bool keyword.
comctl32/tests: Output message sequences only on failure.
gdi32/tests: Remove some noisy traces.
user32/tests: Remove some noisy traces.

Alistair Leslie-Hughes (1):
dpnet/tests: Correct memory leak (valgrind).

Andrei Slăvoiu (1):
wined3d: Recognize cards that expose GLSL 1.30 as DX10 capable even if they don't support EXT_GPU_SHADER4.

Andrew Eikum (6):
mmdevapi: Make buffer size divisible by number of periods.
mmdevapi: Clock rate should be in bytes for shared mode.
user32: Remove unused internal menu messages.
riched20/tests: Allow conversions to non-English codepages.
ole32: Fix return value logging.
ole32: Fix return type.

Aric Stewart (1):
winemac: Reposition cursor for IME composition.

Austin English (3):
include: Add missing EntryInProgress member to _PEB_LDR_DATA struct.
user32: Fix a comment.
msasn1: Add stub dll.

Bruno Jesus (17):
ws2_32: Take care of EINTR inside the helpers.
ws2_32: Avoid memory allocation for simple sends.
ws2_32: Avoid memory allocation for simple receives.
user32/tests: Fix a memory leak (valgrind).
winmm: Fix a memory leak in mciSendStringW (valgrind).
wintrust/tests: Fix a memory leak (valgrind).
winspool.drv: Do not try to check the registry if opening the printer fails (valgrind).
userenv/tests: Fix a memory leak (valgrind).
wininet/tests: Fix a memory leak (valgrind).
shlwapi: Avoid reading past the pointer in PathCreateFromUrlW (valgrind).
usp10: Fix a memory leak in _ItemizeInternal (valgrind).
wininet: Use a helper to send data and take care of EINTR.
winetest: Take care of EINTR on send/recv.
rpcrt4: Take care of EINTR on send/recv.
wininet: Use a helper to receive data and take care of EINTR.
ws2_32/tests: Initialize a test buffer (valgrind).
kernel32: Limit the environment variable size to 32767 in GetEnvironmentVariable.

Damjan Jovanovic (8):
winex11.drv: text/html should be imported as CF_HTML ("HTML Format"), not CFSTR_INETURL ("UniformResourceLocator").
winex11.drv: Don't bother counting how many XDND selections are converted.
winex11.drv: Use the global memory functions to allocate the memory for STGMEDIUM's hGlobal.
winex11.drv: Use the clipboard functions and formats to import selections that XDND doesn't support.
winex11.drv: Use the clipboard to import text/html XDND selections.
winex11.drv: Import text/plain XDND selections through the clipboard.
winex11.drv: Store XDND cached data in global memory objects.
winex11.drv: Migrate importing text/uri-list XDND selections to the clipboard.

Daniel Beitler (1):
msi: Prevent call to memset with a null pointer in get_tablecolumns function.

Felix Janda (3):
server: Add missing includes of poll.h.
dnsapi: stdio.h needs to be included for sprintf().
iphlpapi: stdio.h needs to be included for sprintf().

François Gouget (2):
msvcrt/tests: Make qsort_comp() static.
scrrun: Fix compilation on systems that don't support nameless unions.

Guillaume Charifi (2):
ole32: CoCreateGuid returns E_INVALIDARG on null-GUID.
pdh: Implement PdhExpandCounterPathA/W.

Hans Leidekker (9):
wininet: Fix build on Mac OS X 10.5.8.
winhttp: Fix build on Mac OS X 10.5.8.
wbemprox: Handle NULL out parameter to object methods.
wbemprox: Add a partial implementation of CIM_Processor.
winhttp/tests: Mark some test results on Windows 8 as broken.
winhttp: Ignore URL components if the buffer length is zero.
winhttp: Only set the scheme if we have a valid URL.
wininet/tests: Fix a couple of test failures on Internet Explorer 11.
wininet: Only set the content length header if it's not explicitly set by the user.

Henri Verbeet (20):
d2d1: Add the ID2D1HwndRenderTarget interface.
d2d1: Add the ID2D1DCRenderTarget interface.
d2d1: Add the ID2D1GdiInteropRenderTarget interface.
d2d1: Add the ID2D1Factory interface.
wined3d: Increase the SM4 instruction length mask size.
d2d1: Implement D2D1CreateFactory().
d2d1: Implement d2d_factory_CreateDxgiSurfaceRenderTarget().
wined3d: Recognize the SM4 discard opcode.
wined3d: Recognize the SM4 dp2 opcode.
wined3d: Recognize the SM4 ishl opcode.
ddraw/tests: 64-bit ddraw only has DWORD surface pitch alignment in some cases.
ddraw: Clear DDSD_LINEARSIZE on uncompressed surfaces.
ddraw: Clear DDSD_PITCH on compressed surfaces.
ddraw: Use wined3d_surface_get_pitch() to calculate dwLinearSize for compressed surfaces.
ddraw: Properly support creating compressed user memory surfaces.
ddraw: Don't try to create surfaces for wined3d internal textures.
wined3d: Add format information for WINED3DFMT_R8_UNORM.
d3d10_1: Forward D3D10CreateEffectFromMemory to d3d10.
d3d10core: Implement d3d10_device_GetDeviceRemovedReason().
user32: Ensure at least one character is used in TEXT_WordBreak().

Huw D. M. Davies (6):
dwrite/tests: U+1cc8 is not an assigned codepoint, use U+1cc7 instead. Fixes test on win 8.
crypt32: Add a new element to SIP_ADD_NEWPROVIDER.
crypt32/tests: Fix test failure on win 8.
riched20: Don't skip the final carriage return in SFF_SELECTION mode.
gdi32/tests: tmLastChar is solely governed by the last entry before 0xffff in the cmap.
gdi32: CLIP_DFA_DISABLE should disable the font association mechanism.

Jacek Caban (20):
urlmon: Fixed some occasionally failing tests.
ieframe: Added InternetExplore::get_HWND implementation.
oleaut32: Rewrite debugstr_vt.
oleaut32: Use debugstr_variant for dump_Variant implementation.
oleaut32: Replaced dump_Variant by debugstr_variant.
mshtml: Call unlink from HTMLDOMNode::Release.
mshtml: Added new helper for getting element attribute value and use it in script.c.
mshtml: Added new helper for GetAttribute based getters and use it in IHTMLMetaElement implementation.
mshtml: Use get_elem_attr_value helper in get_font_size.
mshtml: Use get_elem_attr_value helper in is_elem_name.
mshtml: Use get_elem_attr_value helper in check_event_attr.
mshtml: Use get_elem_attr_value helper in HTMLFormElement_get_dispid.
mshtml: Use elem_string_attr_getter helper in HTMLLabelElement_get_htmlFor implementation.
mshtml: Use get_elem_attr_value helper in npplugin.c.
mshtml: Added function object default value getter implementation.
vbscript: Added support for exponential form of numeric literals.
ntdll: Removed no longer used defines.
jscript: Properly handle NULL pvarResult in ParseScriptText.
vbscript: Always initialize is_array value (valgrind).
jscript: Added accessing not existing property on IDispatchEx tests.

Julian Rüger (1):
po: Update German translation.

Marcus Meissner (2):
jsproxy: Avoid potential NULL dereference (Coverity).
msxml3: Removed unused allocation (Coverity).

Michael Müller (2):
server: Fix return value for FSCTL_PIPE_WAIT if pipe does not exist.
ntdll: Stub TokenAppContainerSid in NtQueryInformationToken.

Michael Stefaniuc (28):
dmusic: Return S_FALSE for the unimplemented IPersistStream_IsDirty().
dmusic/tests: Test unimplemented IPersistStream methods in DMCollection.
dmstyle/tests: Test some IPersistStream methods of DMStyle.
dmscript: IPersistStream_GetClassID() is not implemented for DMScript.
dmscript/tests: Test unimplemented IPersistStream methods in DMScript.
dmband/tests: Test some IPersistStream methods of DMBand.
dswave/tests: Test some IPersistStream methods of DirectSoundWave.
dmcompos/tests: Test some IPersistStream methods of DMChordMap.
dmscript: Move a struct definition to the .c file that uses it.
dmloader/tests: Test some IPersistStream methods of DMContainer.
dmime/tests: Test some IPersistStream methods of objects with DMObject.
dmscript/tests: Test some IPersistStream methods of DMScriptTrack.
dmusic: Simplify the creation of a DirectMusicBuffer object.
dmusic: Don't leak memory on IReferenceClock creation failure.
dmusic: Release the clock when destroying the IDirectMusic8 object.
dmusic: Simplify the creation of a DirectMusic8 object.
dmusic: Don't leak memory on DirectMusicInstrument creation failure.
dmusic: Lock/unlock the module only on creation/destruction of the object.
dmime/tests: Rather test for IDirectMusicObject as invalid iface.
dmime: Move a struct definition to the .c file that uses it.
dmband: Move struct definitions to the .c files that uses them.
dmcompos: Move a struct definition to the .c file that uses it.
dmstyle: Move a struct definition to the .c file that uses it.
dmloader: COM cleanup for IDirectMusicContainer.
dmusic: Move the common parts of DMObject to a generic implementation.
dmusic: Use generic "unimplemented" methods for IPersistStream.
dmusic: Get rid of the extra pointer to a DMUS_OBJECTDESC.
dmusic: Remove the redundant "IDirectMusicCollection" from method names.

Nicolas Le Cam (2):
mshtml/tests: Remove unused variable.
winedbg: Remove unused variable.

Nikolay Sivov (29):
scrrun/tests: Fix tests to depend on current codepage.
scrrun: Implement Count() property for file collection.
scrrun: Return disk space as VT_I4 if it fits.
netprofm: Added IConnectionPointContainer stub for INetworkListManager.
xmllite/writer: Implement OmitXmlDeclaration property.
xmllite/writer: Implement ByteOrderMark property.
scrrun: Return float type size when signed I4 limit exceeded.
scrrun: Use existing helper to return file size.
xmllite/writer: Initial implementation of WriteStartElement().
xmllite/writer: Initial implementation of WriteElementString().
propsys: Implement PSGetPropertySystem().
propsys: Forward corresponding methods to exports.
ntdll: Fix LdrLockLoaderLock()/LdrUnlockLoaderLock() on 64bit.
include: Add more error codes.
include: Added IImageList2 definition.
shell32: Update to FolderItem2.
wbemprox/tests: Fix some test failures on older XP versions.
comctl32/progress: Set default marquee animation timer to 30 msec.
comctl32/progress: Erase background too on WM_TIMER for marquee animation.
comctl32/progress: Update position by one step on PBM_SETPOS in PBS_MARQUEE style.
comctl32/treeview: Simplify sending parent WM_NOTIFY notifications.
comctl32/treeview: Send TVN_KEYDOWN in response of WM_KEYDOWN.
comctl32/imagelist: Update to IImageList2.
explorerframe: Query for more notification callbacks.
explorerframe/tests: Mark some results as broken.
explorerframe: Internally make calls with interface wrappers.
services: Defer service delete until all handles are closed.
quartz/tests: Unregister filters only when registered successfully.
shlwapi/tests: Skip if test ini file wasn't created.

Piotr Caban (17):
vbscript: Parse doubles with bigger precision in parse_numeric_literal.
msvcrt: Add _mbsnbcpy_s_l implementation.
msvcrt: Add _mbscpy_s implementation.
vbscript: Support multibyte characters in Global_Chr.
msvcrt: Fix __libm_sse2_sqrt_precise implementation.
msvcp100: Export basic_istream::gcount function.
msvcrt: Rewrite qsort function.
msvcrt: Add qsort_s tests.
msvcrt: Add _wcslwr_s_l implementation.
msvcrt: Return string in _wcslwr and _wcslwr_l.
user32: Try to activate topmost activable window in WINPOS_ActivateOtherWindow.
msvcp70: Export basic_string iterator functions.
msvcrt: Handle negative file->_cnt value in fwrite.
msvcp90: Fix typo in strstreambuf_freeze.
msvcp70: Export operators working on basic_string.
msvcrt: Add _strxfrm_l implementation.
msvcrt: Add _wcsxfrm_l implementation.

Sebastian Lackner (1):
ntdll/tests: Fix exception test failures on x86_64.

Shuai Meng (4):
vbscript: Implemented CCur.
vbscript: Implemented CDbl.
vbscript: Implemented CLng.
vbscript: Fixed CInt.

Stefan Dösinger (5):
include: Sync an attribute to the Windows 8.1 SDK.
wined3d: Remove d3dfmt_p8_init_palette.
d3d9/tests: Add a test for D3DUSAGE_WRITEONLY.
d3d8/tests: Add a test for D3DUSAGE_WRITEONLY.
ddraw/tests: Test D3DVBCAPS_WRITEONLY.

Toshiaki Hirose (1):
po: Update Japanese translation.

Vincent Povirk (8):
user32/tests: Add test for SendMessage race condition.
server: Clear the queue's QS_SMRESULT bit when sending a new message.
ole32: Use a snapshot file when sharing storages for writing.
ole32: Invalidate all caches when the transaction sig changes.
shell32: Fix memory leak.
ole32: Don't store file size in FileLockBytesImpl.
ole32: Support storage files larger than 4 GB.
notepad: Check IsDialogMessage before TranslateAccelerator.

Zhenbo Li (6):
mshtml: Added IHTMLLocation::assign method implementation.
mshtml: Added nsIDOMHTMLTableCellElement declaration.
mshtml: Added IHTMLTableRow::deleteCell method implementation.
mshtml: Added IHTMLLinkElement::media property.
mshtml: Added IHTMLDocument2:toString method.
mshtml: Added IHTMLTableRow::insertCell method implementation.

Printed from Linux Compatible (