Wine release 1.1.37

The Wine development release 1.1.37 is now available.

What’s new in this release (see below for details):
– A number of fixes in AVI file support.
– Several MSXML improvements.
– A few MSI 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.1.37:

7309 Desperados: image masking problem
8232 Fate Axis – unimplemented function D3DRMCreate
8867 Oblivion water lacks any shader effects
9034 Fireworks 3 help fails, URL passed to winebrowser mishandled
9369 cannot use context menu in password gorilla
10047 Oblivion water lacks transparency
11462 Protel does not show correctly status bar
11795 Oblivion giant tree sprite(s) follow the player
12871 Civilization 2 Test of Time is Unplayable
13560 Baldur’s Gate 2 Throne of Bhaal fails to save game because the file default.tot exists in the game temp directory.
13827 Oblivion distant trees flicker and look like 2D sprites
14443 Enterprise Architect – Text inside block rendered in reversed order
15368 Heroes of Might and Magic IV crashes
15388 gdi32: dib.c fails to build with gcc 4.2, -Werror -O3
15496 Rome Total War always crashes on certain maps
15580 The Bat! v4.0.34.13 – lose birthday in addressbook
15962 BMW M3 Challenge: Screen between intro and menu is invisible
16143 msxml1: Can’t set an attribute to Null
16496 Battlezone 2: frame rate deteriorated
16750 ntdll/tests/rtlbitmap.c: comparison is always false due to limited range of data type
16965 Deep Burner opens with missing buttons on burn iso window
16981 SAMO-Touragent does not work with new gecko engine (since 1.1.12)
17041 Console messages cut short?
17123 WinAVR: make command fails with Interrupt/Exception caught
17172 IDirect3DDevice9::Present ignores pDestRect
17203 Regression in PowerPC compilation
17308 ArtRage needs native gdiplus
17650 Maya PLE 8.5 doesn’t install
18381 Oblivion: blank screen when HDR is enabled
18541 HoneyBOT: Wine crash upon Right Click Copy of text.
18658 Kingsoft Office crashes almost immediately on launch
19395 ExSystemTimeToLocalTime is not implemented
20406 Perfect World International – Diagonal Lines on Tiger Barbarians
20841 Read buffer overflow in test_GetSidSubAuthority?
21087 Civilization 2 crashes during installation
21206 Cygwin 1.7.1 fails to install packages under wine
21220 16-bit app barks at wprocs.dll and then crashes
21289 System call “dup2” returns 0 for negative inputs, thus behaving different from real Windows
21291 System call “dup2” doesn’t retain text vs binary mode
21320 wine/list.h has namespace conflicts with sys/queue.h
21331 Stars! crash on “New Game”
21334 build broken on OpenSolaris


Changes since 1.1.36:

Alexander Kochetkov (1):
user32: Fix arithmetic overflow in GetThumbVal.

Alexandre Julliard (15):
winebuild: Do not output an undefined symbol reference for variables.
winebuild: Rename __wine_call_from_32_regs for consistency with 64-bit.
winebuild: Output the asm relay functions as needed and get rid of –relay32 mode.
winebuild: Output the 16-bit asm relay functions as needed and get rid of –relay16 mode.
ntdll: Fix the NtCreateEvent prototype.
winedump: Remove an unused flag.
msi: Add a partial stub for the ValidateProductID control event.
ntdll: Implement LdrQueryImageFileExecutionOptions and use it to retrieve the per-process global flag.
ntdll: Load the various PEB global options at startup.
wine.inf: Add entries for some of the global options.
include: Define some more of the NT global flag values.
ntdll: Make it possible to use RtlGetNtGlobalFlags before the TEB is initialized.
ntdll: Set the heap debug flags based on the GlobalFlag value.
kernel32/tests: Add tests for the global flag and its influence on the heap flags.
winex11: Use the thread connection to clear the systray icon window.

Andrew Eikum (5):
wininet: Add Internet{Set,Query}Option tests, implement POLICY option.
wininet: Convert PER_CONN_OPTION_LIST from A to W in InternetSetOptionA.
wininet: Pull proxy info gathering into its own function.
wininet: Implement PER_CONN_PROXY_SERVER option.
wininet: Implement PER_CONN_FLAGS option.

Andrew Nguyen (19):
ntdll/tests: Make function pointer checks consistent and report skips.
ntdll/tests: Allow native crashing code to be compiled.
ntdll/tests: Add a few additional tests for wcschr.
ntdll/tests: Add a few additional tests for wcsrchr.
advapi32/tests: Test SystemFunction036.
msvcrt: Implement and test rand_s.
ntdll/tests: Remove obsolete commented code.
ntdll/tests: Remove useless ifdef statements.
ntdll/tests: Report skip when time conversion functions are not available.
ntdll/tests: Re-enable a commented virtual memory test.
ntdll/tests: Report appropriate skips for information tests.
kernel32/tests: Add tests for IsBadReadPtr.
kernel32/tests: Add more tests for IsBadWritePtr.
kernel32/tests: Add tests for IsBadCodePtr.
mapi32/tests: Report skips for unavailable property functions.
mapi32/tests: Report skips for unavailable utility functions.
mapi32/tests: Report skip for MAPIGetDefaultMalloc.
mapi32/tests: Fix the PropCopyMore tests and add an additional test.
mapi32/tests: Centralize property function pointer initialization.

André Hentschel (5):
kernel32/tests: Simplify string generation.
msvcrt: Forward __C_specific_handler to ntdll.
msvcrt/tests: Add some demangle tests.
msvcrt: Fix typo.
kernel32/tests: Initial fiber tests.

Aric Stewart (1):
oleaut32: Do not crash in logging if string is NULL.

Austin English (1):
winecoreaudio.drv: Reorder includes to avoid OS X bug.

Christian Costa (24):
d3drm: Add definitions for IDirect3DRM2 and IDirect3DRM3 interfaces.
d3drm: Fix LPDIRECT3DRM definition and make sure it is defined before including d3drmobj.h.
d3drm: Add some definitions.
d3drm: Add some object interface definitions.
d3drm: Simplify declaration of VTable members (spotted by Dmitry Timoshkov).
d3dxof: Simplify declaration of VTable members.
amstream: Simplify declaration of VTable members.
d3drm: Fix IDirect3DRMObject2 macros.
d3drm: Fix IDirect3DRMDevice macros.
d3drm: Add definitions for IDirect3DRMDevice2.
d3drm: Add definitions for IDirect3DRMDevice3.
msvcr71: Add forward to msvcrt for ?swprintf@@YAHPAGIPBGZZ and ?vswprintf@@YAHPAGIPBGPAD@Z.
d3drm: Add definitions for IDirect3DRMViewport.
d3drm: Add definitions for IDirect3DRMViewport2.
d3drm: Add definitions for IDirect3DRMFrame.
d3drm: Add definitions for IDirect3DRMFrame2.
d3drm: Add definitions for IDirect3DRMFrame3.
d3drm: Add definitions for IDirect3DRMMesh.
d3drm: Add definitions for IDirect3DRMProgressiveMesh.
d3drm: Add definitions for IDirect3DRMShadow and IDirect3DRMShadow2.
d3drm: Add definitions for IDirect3DRMFace.
gdi32: Improve some FIXMEs.
d3drm: Add definitions for IDirect3DRMFace2.
d3drm: Add definitions for IDirect3DRMMeshBuilder.

Damjan Jovanovic (1):
sti: Add launch application registry.

David Adam (1):
d3drm: The input quaternions are not changed when calling D3DRMQuaternionSlerp.

Detlef Riekenberg (2):
commdlg: Fix PrintDlg parameter checks.
avifil32/tests: Add initial tests.

Dmitry Timoshkov (1):
winmm: Buffer size must be at least MMIO_DEFAULTBUFFER (8192) bytes.

Erich Hoover (1):
ntoskrnl: Forward ExSystemTimeToLocalTime and ExLocalTimeToSystemTime to ntdll.

Freddie Tilley (1):
ntdll: Set cpu frequency for FreeBSD 7.2 and higher.

Gerald Pfeifer (1):
krnl386: Move WINE_DECLARE_DEBUG_CHANNEL(module) under #ifdef MZ_SUPPORTED.

Hans Leidekker (5):
msi: Support retrieving rows from join tables.
msi: Fix parsing of feature overrides.
msi: Add a test to exersize the code to retrieve rows from join tables.
msi: Add support for updating rows in join tables.
msi: Add tests for updating rows in join tables.

Henri Verbeet (13):
d3d8: Remove the unused Direct3DResource8_Vtbl.
d3d9: Add a separate function for query initialization.
wined3d: Add a separate function for query initialization.
wined3d: Remove some unused query code.
wined3d: Merge baseshader.c into shader.c.
wined3d: Don’t leak the context array in the swapchain_init() error path.
wined3d: Set the query.c GLINFO_LOCATION to *gl_info.
d3d9: Add a separate function for stateblock initialization.
wined3d: Sort our GL extension definitions.
wined3d: Fix the ARB_pixel_buffer_object extension definitions.
wined3d: Remove the second set of EXT_texture_env_dot3 definitions.
wined3d: Remove the duplicate GL_2X_BIT_ATI define.
wined3d: Remove unused occlusion query extensions.

Huw Davies (5):
include: Add the ability to initialize oledb constants independently of the INITGUID define by defining DBINITCONSTANTS instead.
msdaps: Switch to using an entry prefix for the auto-generated dlldata routines.
msdaps: Add stub class factories for the row and rowset servers and proxies.
msdaps: Register the row and rowset proxy and server classes.
shell32: Add a test to show the IShellLink_GetIDList returns a copy of the IDList, remove an incorrect comment and fix a memory leak.

Ilya Shpigor (2):
gdi32: Additional checking in the test for font creation with the OEM charset.
winex11.drv: Produce VK_CANCEL vkey on the Ctrl+Pause/Break pressing.

Jacek Caban (12):
mshtml.idl: Added IHTMLIFrameElement interface declaration.
mshtml: Added IHTMLIFrameElement stub implementation.
mshtml: Added IHTMLIFrameElement IDispatchEx support.
mshtml: Silence invalid FIXME.
mshtml: Store document as IHTMLDocument2 interface.
mshtml: Create URL moniker after test initialization.
mshtml.idl: Added DispHTMLFrameElement dispinterface declaration.
mshtml.idl: Added IHTMLFrameElement3 declaration.
mshtml: Added IHTMLFrameElement3 stub implementation.
mshtml: Added IHTMLFrameElement3::get_contentDocument implementation.
mshtml: Added IDispatchEx support for frame element.
jscript: Skip tests on too old jscript.dll.

James Hawkins (1):
Revert “advapi32: Free descriptor if it isn’t returned from GetSecurityInfo().”.

Jason Edmeades (6):
msvcrt: Add support for vsprintf_s.
msvcrt: Add support for sprintf_s.
comctl32/listview: Issue LVM_DELETEALLITEMS from WM_DESTROY.
kernel32: Return error on second attempt to free a module.
netapi31: Add basic support for NetServerGetInfo.
msi: Correct the setting of environment variables.

Jeff Zaroyko (2):
msvcrt/tests: Test _dup2 for failure when second arg is negative.
msvcrt: Check if argument passed to _dup2 is positive.

Juan Lang (1):
secur32: Report an error if libgnutls isn’t found.

Julius Schwartzenberg (7):
avifil32/tests: Initial test data and simple test for avifil32.
avifil32/tests: Test corrupt avi list magic.
avifil32/tests: Test how avifile deals with audio stream and wave headers.
avifil32: Overwrite dwRate in the audiostream with the nBlockAlign from the wave header.
avifil32: Fix header suggested buffersize.
avifil32: Allow files with different extensions to be loaded.
avifil32: Use chunksize specified by the chunk itself, avoids a noticable ticking sound heard when reading past the chunk boundary.

Jörg Höhle (1):
wine.inf: Correct MCI entries.

Kusanagi Kouichi (4):
user32/tests: Add test for Shift+F10.
user32: Make DefWindowProc handle Shift+F10.
user32: Add definitions for EM_GETIMESTATUS and EM_SETIMESTATUS.
user32: F10 key deactivates menu.

Maarten Lankhorst (3):
mmdevapi: Add code to enumerate NOTPRESENT devices.
mmdevapi: Dump device id in test.
avifile: Fix playback of fixed sample size audio streams.

Marcus Meissner (2):
shell32: Handle bad menu handle (Coverity).
dplayx: Remove currently unused unicode code (Coverity).

Michael Stefaniuc (15):
Grammar fixes “is doesn’t” => “doesn’t”.
dmime: Avoid newlines inside FIXME messages.
devenum: Avoid newlines inside FIXME messages.
user32: Avoid newlines inside FIXME messages.
objsel: Avoid newlines inside FIXME messages.
ddraw: Simplify DllCanUnloadNow().
dmusic: Avoid newlines inside FIXME messages.
dmscript: Avoid newlines inside FIXME messages.
dmstyle: Avoid newlines inside FIXME messages.
dmcompos: Avoid newlines inside FIXME messages.
dmsynth: Avoid newlines inside FIXME messages.
d3d10: Remove superfluous NULL check before HeapFree (Smatch).
d3d10: Remove break after return (Smatch).
dmband: Avoid newlines inside FIXME messages.
crypt32/tests: Add a win_skip().

Mike Kaplinskiy (2):
msxml: getElementsByTagName does not respect namespaces.
server: Activate pending asyncs on a hangup/error.

Nikolay Sivov (27):
msxml3: Don’t leak externaly allocated xmlSAXHandler.
msxml3: Don’t lose pointer to externaly allocated xmlSAXHandler copy.
msxml3/tests: Fix some string leaks in tests.
msxml3: Fix string leak while parsing with IXMLDOMDocument.
msxml3: Implement IXMLDocument::get_version().
msxml3: Implement IXMLDocument::get_doctype().
msxml3: Get rid of upper case converting helper.
advapi32: Free descriptor if it isn’t returned from GetSecurityInfo().
msxml3/tests: Add some tests for IPersistStreamInit implementation of IXMLDocument.
msxml3/xmldoc: Fix IPersistStreamInit::GetClassID() for IXMLDocument.
msxml3/xmldoc: IPersistStreamInit::InitNew() seems to do nothing for IXMLDocument.
msxml3/xmldoc: Don’t leak document and stream on next IXMLDocument::Load().
msxml3: Don’t preallocate root element, return new instance on each call.
msxml3: Implement IXMLElement::removeChild() with some tests.
msxml3: In IXMLElementCollection store pointer to node instead of pointer to children.
msxml3: Track linked/unlinked state for element and free node data only when unlinked.
msxml3/tests: Fix interface leak and message typo.
msxml3: Implement IXMLDOMElement::removeAttribute().
msxml3: Use a helper to check for created content handler.
include: Add IXmlReader interface definition.
xmllite/tests: Add basic test structure for IXmlReader.
xmllite: Add stub implementation of IXmlReader interface.
msxml3: Implement IXMLDOMComment::deleteData() with tests.
msxml3/tests: Fix interface leak.
xmllite/tests: Test query for supported interface sequence while creating IXmlReaderInput instance.
xmllite: Add IXmlReaderInput stub implementation.
xmllite: Basic input object creation on IXmlReader::SetInput().

Paul Vriens (22):
ntdll/tests: Fix a test failure on NT4.
comctl32: Fix size parameter for memset (Coccinelle).
widl: Fix size parameter for xrealloc (Coccinelle).
oleview: Fix size parameter for memset (Coccinelle).
winedump: Pass the correct size to the helper (Coccinelle).
msvidc32: Fix size parameter for memset (Coccinelle).
d3d9/tests: Correct the size of a memcmp.
dsound: Fix a typo.
rsaenh/tests: Don’t check result twice (Coccinelle).
winealsa.drv: Don’t check input parameter twice (Coccinelle).
dinput: Don’t check a parameter twice (Coccinelle).
dxdiagn/tests: Fix some test failures on a clean W2K3.
inetmib1/tests: Free memory after use (Valgrind).
shell32: Remove some unneeded parameter setting.
user32/tests: Run tests again on Win95.
kernel32/tests: Skip a test on Win9x/WinMe.
shell32/tests: Fix crash on ancient Win95.
rasapi32/tests: Fix some test failures on Win9x.
user32/tests: Don’t crash on Win9x/WinMe.
xmllite/tests: Remove some tests that make Vista SP0 crash.
rpcrt4/tests: Fix some memory leaks (Valgrind).
msvcrtd/tests: Fix a memory leak (Valgrind).

Peter Dons Tychsen (2):
user32: Do not allow a change of capture if the currently capture window is a menu unless explicitly specified.
comctl32: Handle WM_NOTIFY correctly when the parent returns zero.

Piotr Caban (7):
jscript: Added implementation of Array.reverse.
jscript: Make Array.join generic.
shlwapi: Fix MLBuildResURLW implementation.
jscript: Make Array.pop generic.
jscript: Make Array.sort generic.
jscript: Add error handling to Array.reverse.
shlwapi: Improved res protocol handling in UrlCanonicalizeW.

Rico Schüller (2):
d3d10: Reorder struct d3d10_effect_variable to make the initialisation nicer.
d3d10: Parse effect shaders as anonymous shaders.

Rob Shearman (9):
wpp: Fix expansion of macro bodies following the parsing of a numerical digit.
widl: Add support for character constants in expressions.
rpcrt4: Add structure definition for RPC AUTH3 packet and use the size of this on sending to fix authentication against native servers.
include: Replace hexadecimal representation of four character codes in WINED3DFORMAT enum with macros using the actual characters.
widl: Fix symbol was not declared and using plain integer as NULL pointer sparse warnings.
wrc: Fix symbol was not declared and using plain integer as NULL pointer sparse warnings.
server: Fix symbol was not declared and using plain integer as NULL pointer sparse warnings.
ole32: Rearrange declarations in itemmoniker.c to avoid unnecessary forward declarations.
wmc: Fix symbol was not declared and using plain integer as NULL pointer sparse warnings.

Stefan Leichter (1):
user.exe: Forward WNetGetUser16 to WNetGetUserA of mpr.dll, based on a patch from Andrew Nguyen.

Uwe Bonnes (3):
msvcrt: In unbuffered text mode reading \r\n with fgetc fails.
msvcrt: xxopen() accepts spaces in the mode string.
msvcrt: Handle CR at buffer boundary and test case.

Vitaly Lipatov (1):
wineconsole: Fix Russian translation.

Alexandre Julliard

Comments are closed.