The Wine development release 1.3.14 is now available. What's new in this release (see below for details): - Many cleanups to address Valgrind and Clang warnings. - Support for creating compressed cabinet files. - Translation updates. - Various bug fixes. The source is available from the following locations: http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.3.14.tar.bz2 http://prdownloads.sourceforge.net/wine/wine-1.3.14.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.3.14: 10140 Most grayscale JPEGs cause abnormal rendering artifacts in CDisplay 11021 Unable to launch Universal Combat 11124 VAZ Modular Demo unable to exit raising access violation exception 11242 Deprecated functions called in audiounit.c 12303 Halo has white boxes covering menu items when it loads the first screen. 13629 ABEV (Hungarian Tax Returning SW) has some GFX problem with logo 14282 Eve Online in windowed mode has additional black borders 15686 Microsoft Word 5.5 for DOS does not install; int 21h ah=41h not fully implemented 16695 Wine broken on PowerPC 17884 Tree glitch in fable 19202 eve online 100% cpu usage (frame rate limiter is not limiting anything) 21517 Sims 3 crashes to desktop when entering Create-A-Sim or buying a house 23267 Eudora 7.1.0.9: White space appears below the Search Web dropdown 25206 Anarchy Online v18.4, Ingame browser crashes (Awesomium.dll) 25865 EVE Online crashes if a character portrait requests fails 25911 Miranda + windows riched20.dll = crash 25933 SolidWorks 2010: Unimplemented function propsys.dll.PSRefreshPropertySchema 25951 Mathematica 6.0 installation fails 25989 Total Commander: Crashes when clicking the current directory field of the current panel 25991 DameWare Exporter: Unimplemented function netapi32.dll.NetUseDel 26014 Printing produces garbled output, characters rotated and sliced. 26036 [foobar2000 1.x] crash when opening certain dialog box 26051 wintrust/softpub tests show a few leaks under valgrind 26052 usp10/usp10 tests show a few valgrind errors 26071 urlmon/uri tests show some valgrind warnings 26123 mshtml/protocol shows several leaks under valgrind ---------------------------------------------------------------- Changes since 1.3.13: Akihiro Sagawa (2): wmc: Update PO message match algorithm. po: Update Japanese translation. Alexander Kochetkov (2): comctl32: Fixed height of comboboxex32. wineps.drv: All map modes should have inverted y-transforms. Alexander Lakhin (5): po: Update Russian translation. cryptui: Add Russian translation resources. inetcpl.cpl: Add Russian translation resources. shdocvw: Add Russian translation resources. regedit: Update Russian translation. Alexander Morozov (2): shell32: Implement Folder2::get_Self. shell32: Partially implement FolderItem::get_Path. Alexander Scott-Johns (2): comctl32: Fix read of uninitialized data in LISTVIEW_HeaderNotification and rename it to LISTVIEW_Notify (Valgrind). user32: Fix read of uninitialized data and a couple of typos in TrackMouseEvent (Valgrind). Alexandre Julliard (16): cabarc: Add support for specifying a maximum cabinet file. cabarc: Add support for starting a new folder with a '+' file name. cabinet: Store folders in a list in memory instead of in a temp file. cabinet: Store files in a list in memory instead of in a temp file. cabinet: Add helper functions for temp file manipulations. cabinet: Store the CCAB data as soon as it is available. cabinet: Rewrite the cabinet header output code, and write everything to disk in one step. cabinet: Store the data block headers in a memory list instead of on-disk. msvcr90/tests: Fix the type info test for 64-bit. kernel32: Don't try to initialize curses if the TERM variable is not set. cabinet: Create one temp file per folder and avoid an extra copy of the data. cabinet: Cleanup file loading and add infrastructure for plugging in real compression. cabinet: Create temp files only once we have data to store into them. cabinet: Add support for MSZIP compression. cabinet: Avoid some memory allocations by storing buffers directly in the FCI structure. configure: Print a notice if zlib isn't found. Alistair Leslie-Hughes (6): mshtml: Implement IHTMLStyle put_borderRightColor. mshtml: Implemented IHTMLStyle_put_borderBottomColor. mshtml: Implement IHTMLStyle_put_borderLeftColor. mshtml: Implement IHTMLCurrentStyle_get_padding. mshtml: Implement IHTMLAnchorElement_put_href. msxml3: Add IObjectWithSite support to IXMLHttpRequest. Amine Khaldi (1): riched20: Fix a c89 conformance issue in ITextImpl->editor->rcFormat initialization. Andrew Nguyen (12): dxdiagn: Make the containers keep a reference to a IDxDiagProvider object. dxdiagn: Add code that introduces the infrastructure of a provider information tree. dxdiagn: Add code that populates the DxDiag_SystemInfo container. dxdiagn: Add code that populates the DxDiag_DisplayDevices container. dxdiagn: Add code to create stub containers for DxDiag_DirectSound. dxdiagn: Add code that populates the DxDiag_DirectXFiles container. dxdiagn: Add code that populates the DxDiag_DirectShowFilters container. dxdiagn: Remove the old container initialization code in preparation for switching to the information tree. dxdiagn: Transition to the information tree by making IDxDiagContainer view the information tree. dxdiagn: Restore a few traces in the container construction functions. usp10/tests: Avoid passing optional pointers to uninitialized structures in ScriptString tests. propsys: Add a PSRefreshPropertySchema stub. André Hentschel (12): ntdll: Only use ST_FIX_ALIGN on solaris. netapi32: Add stub implementation for NetUseDel. netapi32: Add stub implementation for NetServerDiskEnum. oleaut32/tests: Add more safearray tests. msvcrt: Fixed a typo. oleaut32: Remove an unneeded error. winemaker: Ignore whitespaces before defines. urlmon/tests: Mark unavailable InternetZoneManagerEx2 as broken. urlmon/tests: Fix expected result. rsaenh/tests: Test the reported length on success. kernel32: Remove a useless error message. kernel32: Forward RtlCompareMemory to ntdll on x86_64. Austin English (141): advapi32/tests: Make sure to use return value (LLVM/Clang). comcat/tests: Make sure to use return value (LLVM/Clang). dinput/tests: Make sure to use return value (LLVM/Clang). credui/tests: Make sure to use return value (LLVM/Clang). crypt32/tests: Make sure to use return value (LLVM/Clang). cryptnet/tests: Make sure to use return value (LLVM/Clang). comctl32/tests: Make sure to use return value (LLVM/Clang). gdi32/tests: Make sure to use return value (LLVM/Clang). explorerframe/tests: Don't assign values to variables that are never checked (LLVM/Clang). kernel32/tests: Remove unused assignment (LLVM/Clang). ole32/tests: Remove unused assignment (LLVM/Clang). rsaenh/tests: Make sure to use return values (LLVM/Clang). shdocvw/tests: Make sure to use return value (LLVM/Clang). usp10/tests: Make sure to use return value (LLVM/Clang). wininet/tests: Make sure to use return value (LLVM/Clang). winspool.drv: Make sure to use return values (LLVM/Clang). gdiplus/tests: Make sure to use return values (LLVM/Clang). avifil32/tests: Remove useless variable assignments (LLVM/Clang). d3dx9_36/tests: Remove unused variable assignments (LLVM/Clang). ddraw: Fix unused variable warnings (LLVM/Clang). dsound/tests: Make sure to use return values (LLVM/Clang). fusion/tests: Make sure to use return values (LLVM/Clang). msvcrt/tests: Make sure return values are used (LLVM/Clang). oleaut32/tests: Make sure return values are used (LLVM/Clang). ntdll/tests: Make sure return values are used (LLVM/Clang). localspl/tests: Make sure return values are used (LLVM/Clang). inetcomm/tests: Make sure to use return values (LLVM/Clang). mmdevapi/tests: Make sure return value is used (LLVM/Clang). mstask/tests: Make sure return values are used (LLVM/Clang). mlang/tests: Remove unused assignment (LLVM/Clang). mshtml/tests: Make sure return value is used (LLVM/Clang). msxml3/tests: Remove unneeded assignment (LLVM/Clang). hlink/tests: Don't check results in disabled tests (LLVM/Clang). qmgr/tests: Make sure return values are used (LLVM/Clang). cryptui/tests: Remove a dead assignment (LLVM/Clang). dplayx/tests: Make sure to use return values (LLVM/Clang). msi/tests: Make sure to use return values (LLVM/Clang). localui/tests: Make sure to use return values (LLVM/Clang). riched20/tests: Make sure return value is used (LLVM/Clang). rpcrt4/tests: Make sure return values are used (LLVM/Clang). shlwapi/tests: Don't check return values inside of if(0) (LLVM/Clang). version/tests: Make sure return values are used (LLVM/Clang). user32/tests: Remove unneeded assignment (LLVM/Clang). ws2_32/tests: Remove unneeded assignments (LLVM/Clang). xmllite/tests: Don't check test results inside if(0) (LLVM/Clang). windowscodecs/tests: Make sure returns values are used (LLVM/Clang). kernel32/tests: Make sure to use return values (LLVM/Clang). advapi32/tests: Remove useless assignments (LLVM/Clang). crypt32/tests: Make sure to use return values (LLVM/Clang). gdiplus/tests: Make sure to use return values (LLVM/Clang). shell32/tests: Don't check return values inside of if(0) (LLVM/Clang). secur32/tests: Make sure a return value is used (LLVM/Clang). winhttp/tests: Make sure a return value is used (LLVM/Clang). mmdevapi/tests: Make sure return values are used (LLVM/Clang). gdi32/tests: Make sure to use return value (LLVM/Clang). mshtml/tests: Make sure return values are used (LLVM/Clang). urlmon/tests: Make sure return values are used (LLVM/Clang). d3dx9_36: Make sure return values are used (LLVM/Clang). msi/tests: Make sure to use return values (LLVM/Clang). msvcrt/tests: Remove useless assignment (LLVM/Clang). crypt32/tests: Make sure to use return values (LLVM/Clang). kernel32/tests: Don't check return values inside of if(0) (LLVM/Clang). gdi32/tests: Make sure to use return values (LLVM/Clang). gdiplus/tests: Make sure to use return values (LLVM/Clang). dsound/tests: Make sure to use a return value (LLVM/Clang). ole32/tests: Make sure to use return values (LLVM/Clang). shlwapi/tests: Don't check return values inside of if(0) (LLVM/Clang). user32/tests: Remove some dead assignments (LLVM/Clang). gdiplus/tests: Make sure to use return values (LLVM/Clang). gdiplus/tests: Remove redundant assignments (LLVM/Clang). ntdll/tests: Make sure return value is used (LLVM/Clang). mshtml/tests: Make sure return value is used (LLVM/Clang). secur32/tests: Don't check return values inside of if(0) (LLVM/Clang). oleaut32/tests: Make sure return value is used (LLVM/Clang). shdocvw/tests: Don't check return values inside of if(0) (LLVM/Clang). msvcr90/tests: Don't check return values inside of if(0) (LLVM/Clang). msxml3/tests: Make sure return value is used (LLVM/Clang). crypt32/tests: Make sure to use return values (LLVM/Clang). crypt32/tests: Make sure to use a return value (LLVM/Clang). crypt32/tests: Don't check return values inside of if(0) (LLVM/Clang). crypt32/tests: Make sure to use return values (LLVM/Clang). crypt32/tests: Make sure to use a return value (LLVM/Clang). msi/tests: Don't check return values inside of if(0) (LLVM/Clang). msi/tests: Make sure to use a return value (LLVM/Clang). kernel32/tests: Don't check return values inside of if(0) (LLVM/Clang). kernel32/tests: Don't check return values inside of if(0) (LLVM/Clang). kernel32/tests: Make sure to use return values (LLVM/Clang). secur32/tests: Make sure return values are used (LLVM/Clang). shlwapi/tests: Remove useless assignments (LLVM/Clang). ntdll/tests: Make sure a return value is used (LLVM/Clang). shell32/tests: Make sure return values are used (LLVM/Clang). shell32/tests: Don't check return values inside of if(0) (LLVM/Clang). shell32/tests: Don't check return values inside of if(0) (LLVM/Clang). shell32/tests: Make sure return values are used (LLVM/Clang). shell32/tests: Don't check return values inside of if(0) (LLVM/Clang). shell32/tests: Make sure a return value is used (LLVM/Clang). shell32/tests: Don't check return values inside of if(0) (LLVM/Clang). mshtml/tests: Make sure a return value is used (LLVM/Clang). mshtml/tests: Make sure a return value is used (LLVM/Clang). shell32: Trace APPBARDATA struct members based on message type (Valgrind). gdi32: Add a stub for GdiDrawStream. user32/tests: Make sure return values are used (LLVM/Clang). ntdll/tests: Don't check return values inside of if(0) (LLVM/Clang). ole32/tests: Make sure to use return values (LLVM/Clang). ole32/tests: Make sure to use a return value (LLVM/Clang). ole32/tests: Make sure to use return values (LLVM/Clang). urlmon/tests: Make sure to use a return value (LLVM/Clang). ntdll/tests: Make sure return values are used (LLVM/Clang). wine.inf: Add HKLM\\Software\\Microsoft\\Windows\\Current Version\\Run key. msiexec: Add /unreg as an alias for /z. oleaut32/tests: Don't check return values inside of if(0) (LLVM/Clang). oleaut32/tests: Make sure a return value is used (LLVM/Clang). oleaut32/tests: Make sure return values are used (LLVM/Clang). oleaut32/tests: Make sure return values are used (LLVM/Clang). oleaut32/tests: Remove dead assignments (LLVM/Clang). oleaut32/tests: Don't check return values inside of if(0) (LLVM/Clang). d3dx9_36/tests: Free memory after use (Valgrind). advapi32/tests: Make sure to use return value (LLVM/Clang). advapi32/tests: Make sure to use return value (LLVM/Clang). advapi32/tests: Remove Win9x hacks. crypt32/tests: Make sure to use return values (LLVM/Clang). msi/tests: Remove dead assignments. msi/tests: Make sure to use return values (LLVM/Clang). gdiplus/tests: Make sure to use return values (LLVM/Clang). inetmib1/tests: Remove a dead assignment (LLVM/Clang). crypt32/tests: Remove a dead initialization (LLVM/Clang). ole32/tests: Make sure to use a return value (LLVM/Clang). kernel32/tests: Make sure to use return values (LLVM/Clang). usp10/tests: Remove dead assignment (LLVM/Clang). winmm/tests: Remove dead assignment (LLVM/Clang). crypt32/tests: Make sure to use a return value (LLVM/Clang). crypt32/tests: Make sure to use return values (LLVM/Clang). d3d9/tests: Make sure to use return values (LLVM/Clang). jscript/tests: Remove a dead assignment (LLVM/Clang). comctl32/tests: Remove dead assignments (LLVM/Clang). comctl32/tests: Make sure to use a return value (LLVM/Clang). comctl32/tests: Make sure to use a return value (LLVM/Clang). comctl32/tests: Make sure to use a return value (LLVM/Clang). comctl32/tests: Make sure to use a return value (LLVM/Clang). wintrust/tests: Remove win9x hacks. mshtml/tests: Update disabled test comment. Charles Davis (1): mountmgr: Use the media kind to fill in the device type field on Mac OS. David Adam (1): d3dx9_36: Add a few tests for D3DXCreateBox. Detlef Riekenberg (4): winspool: Do not mark AddPrinterA as stub. msi/tests: Fix a typo. mshtml/tests: Fix a typo. shlwapi: Add stubs for SHWinHelpOnDemandA/W. Dmitry Timoshkov (4): user32: Add a test for reparenting a WS_POPUP window to a WS_CHILD parent. user32: Add message tests for SetParent(). mlang: GetGlobalFontLinkObject() takes a non-zero number of arguments. user32: Use the windows created by the SetParent() test to get a more predictable active/focus window state. EG Galano (1): gdiplus/tests: Make sure return value is used (LLVM/Clang). Francois Gouget (1): comctl32/tests: Fix compilation on systems that don't support nameless unions. Frédéric Delanoy (3): po: Update French translation. po: Update French translation. po: Add missing \n in various po language files. Gerald Pfeifer (6): comctl32/tests: Avoid uninitialized variable warning in GetWidthBytes(). wined3d: Remove an old hack around Mesa choking on protected memory from flush_to_framebuffer_drawpixels. comctl32/tests: Remove unused parameter from test_removeimage(). wpp: Fix the output type for the "unsigned OP signed" cases in BIN_OP_INT and friends. wpp: Add explicit casts when mixing signed and unsigned integers. winmm: Simplify MCI_DumpCommandTable a bit. Hans Leidekker (4): msi: Split up resolve_folder. msi/tests: Show that a failing call to MsiGetSourcePath(SOURCEDIR) sets the SOURCEDIR property. msi: Get rid of msi_component_set_state and msi_feature_set_state. msi: Preserve existing advertise strings in the PublishComponents action. Huw Davies (5): oleaut32: Rewrite ITypeInfo_GetDocumentation proxy/stub to return only the information that is requested. oleaut32: Implement proxy / stub for ITypeInfo_GetDllEntry. oleaut32: Implement proxy / stub for ITypeInfo2_GetDocumentation2. oleaut32: Implement proxy / stub for ITypeLib_GetDocumentation. oleaut32: Implement proxy / stub for ITypeLib2_GetDocumentation2. Hwang YunSong (1): po: Update Korean resource. Igor Egorov (1): kernel32: Add stderr redirection for native Unix programs started from Windows program. Igor Paliychuk (4): po: Update Ukrainian translation. cryptui: Fix French translation. wininet: Fix translations. wordpad: Improve translations. Jacek Caban (21): mshtml: Added IHTMLWindow2::focus implementation. mshtml: Added focus events tests. mshtml: Use case insensitive comparison in parse_classid. urlmon: Don't hardcode zone numbers. mshtml: Return size in about protocols handler's ParseUrl(PARSE_SECURITY_URL) call. mshtml: Fixed size check in res protocol ParseUrl(PARSE_SECURITY_URL) call. urlmon: CoInternetGetSecurityUrl rewrite. urlmon: CoInternetGetSecurityUrlEx rewrite. urlmon: Added more CoInternetGetSecurityUrl[Ex] tests. mshtml: Make nsIURI::[Get|Set]Username implementation IUri-based. appwiz.cpl: Added support for installing packages from MSI files. dsound.h: Added DSBNOTIFICATIONS_MAX definition. dvdmedia.h: Added MPEG2VIDEOINFO declaration. urlmon: Fixed Valgrind warnings. urlmon: Get rid of init variable in stgmed_buf_t. urlmon: Read remaining protocol data if report_data was called after binding finished. urlmon: Properly handle BINDSTATUS_BEGINDOWNLOADDATA. urlmon: Get rid of no longer needed buffering in stgmed_buf_t. mshtml: Fixed a leak (valgrind). msxml3: Silence QueryInterface FIXME. urlmon: Use winetest page URL for abort test. Janne Hakonen (1): iphlpapi: Changed return value of NotifyAddrChange() stub and added test cases. Joris Huizer (6): imagehlp/tests: Don't test function directly when reporting GetLastError(). kernel32/tests: Don't test function directly when reporting GetLastError(). user32/tests: Don't test function directly when reporting GetLastError(). ws2_32/tests: Don't test function directly when reporting GetLastError(). shdocvw: Initialise ie pointer as it's tested (Clang). crypt32: Remove helper variable i (Clang). Juan Lang (17): wintrust/tests: Fix a leak (valgrind). crypt32/tests: Update a CryptMsgUpdate call to succeed on more Windows versions, and check its return value (Clang). crypt32/tests: In more recent Windows versions, updating a data message with no content succeeds. crypt32: Allow updating data messages with no content. rsaenh/tests: Test errors creating schannel keys and hashes before parameters are set. rsaenh: Disallow creating schannel master hashes before setting the client random and server random. rsaenh: Disallow deriving schannel encryption keys before setting the encryption algorithm. crypt32: Don't attempt to find the length of a NULL string (valgrind). rsaenh: Fully initialize schannel algorithm information. crypt32: Fix return value (clang). crypt32: Fix return value in error cases (clang). crypt32: Don't assume a function succeeded (clang). crypt32: Don't assign a count value unless memory allocation succeeds (clang). crypt32/tests: Remove an unused assignment (clang). crypt32/tests: Test a return value (clang). crypt32/tests: Test return value (clang). wintrust/tests: Fix a leak (valgrind). Jörg Höhle (2): msvcrt: sizeof(long double) is 12 with MS, but not necessarily so on UNIX. msvcrt/tests: sizeof(long double) is 12 with MS. Ken Thomases (3): user32: Rename GetKeyboardLayout param; it's a thread ID, not a layout. user32: Remove wrong parameter name from comment. iphlpapi: Enable non-privileged ICMP (ping) on Mac OS X. Maarten Lankhorst (2): riched20: Do not call callback when no data needs to be flushed. dsound: Forcibly lock buffers to be mixed. Matteo Bruni (3): d3dcompiler: Include the string terminator in the output blob. wined3d: Make clip planes independent from offscreen/onscreen drawing. d3d9/tests: Add a test for clip planes. Max TenEyck Woodbury (2): c2man: Search sub-directories for headers too. c2man: Add header's subdirectory and a link to its source file in the 'IMPLEMENTATION' notes. Nicholas Niro (1): winex11.drv: Add proper initialization for border_pixel. Nikolay Sivov (12): comctl32/listview: Remove couple of dead assignments (LLVM/Clang). comctl32/listview: Remove some useless operations (LLVM/Clang). comctl32/listview: Remove duplicated operation (LLVM/Clang). comctl32/tests: Test more return values (LLVM/Clang). urlmon/uri: Remove dead assignment and useless initializer (LLVM/Clang). msxml: Add IXSLTemplate stub. msxml3: Add basic putref_stylesheet() implementation. msxml3: Add a stub IXSLProcessor. msxml3: Basic put_input() method for IXSLProcessor. msxml3: Store output stream for processor. msxml3: Initial implementation of transform() method. msxml3: Null pointer for schema uri should be treated as empty. Peter Urbanec (5): setupapi: Fix comparison issue on 64-bit systems. gdi32/tests: Use virtual screen size instead of primary monitor screen size. d3d8/tests: Use primary monitor screen size to perform tests. d3d9/tests: Use primary monitor screen size to perform tests. jscript: Implement character escaping as described by ECMA-262 B.2.1. Reece Dunn (1): winefile: In the Options > Font menu handler, initially select the current font. Rico Schüller (9): d3dcompiler: Parse OSG5 in the reflection interface. d3dcompiler: Parse bound resources. d3dcompiler: Implement ID3DShaderReflection::GetResourceBindingDesc(). d3dcompiler: Implement ID3DShaderReflection::GetResourceBindingDescByName(). d3dcompiler: Add argument check in D3DReflect(). d3dcompiler/tests: Add reflection test. d3dcompiler/tests: Add reflection vs desc test. d3dcompiler/tests: Add reflection ps desc test. d3dcompiler/tests: Add GetResourceBindingDesc() test. Stefan Dösinger (1): d3d9: Use a proper window class for the query test. Thomas Mullaly (2): urlmon: Fixed invalid read and write errors (Valgrind). mshtml: Fixed a few typos. Vincent Povirk (6): windowscodecs: Release the icon frame substream on success too. gdiplus: Allow adding rectangles with negative sizes to paths. gdiplus: Fix error path in GdipAddPathRectangle. gdiplus: Store an ImageAttributes in texture brushes. gdiplus: Add test for ImageLockModeUserInputBuf. gdiplus: Add tests for locked image bit reading/writing. Yaron Shahrabani (1): po: Hebrew update. -- Alexandre Julliard julliard@winehq.org