The Wine development release 1.3.13 is now available. What's new in this release (see below for details): - Tools for creating MSI installers. - Clipboard improvements. - Support for po files in the message compiler. - Improvements to the Wine debugger. - Various bug fixes. The source is available from the following locations: http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.3.13.tar.bz2 http://prdownloads.sourceforge.net/wine/wine-1.3.13.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.13: 8560 Mouseover information box is broken after window loses focus. 8987 FreePDF XP does not install (13709620-c279-11ce-a49e-444553540000 missing: Shell.Application.1) 11266 3DMark2005 uninstaller fails 11375 Error during Orcad 16.0 installation 12120 iSBEM 3.0 doesn't show EULA on startup 14521 Windows version of OpenJigsaw has graphical glitches. 14882 UpdateResource fails to delete a resource 15640 Tile Studio 2.55: Can't export maps without an extension 16758 tools/winapi/winapi_test: The generated tests produce thousands of failures on 64bit. 17282 qtest: QUAKE.EXE crashes. 18853 Notepad++ can't save files without an extension 19563 Guitar Hero World Tour crashes after dinput's QueryInterface 19686 Acrobat Reader 1.0 for DOS installer fails 20158 Fritz 11 doesn't draw buttons properly 20576 Sluggish 2D graphics on BabasChess 20802 Uninstall doesn't work for 2gis shell 21041 Mismatched GlobalLock/HeapFree in X11DRV_CLIPBOARD_ExportString? 21311 uninstalling visual C++ 2008 causes a crash 21373 Eve Online: Jukebox dont work 21471 Uru: Cursor not drawn correctly 21543 Pasting bitmaps that were created by gnome-screenshot can crash Wine in X11DRV_CLIPBOARD_RenderSynthesizedBitmap 21669 MiniRacingOnline: In-Game Graphics non-transparent/Not in proper positions 22330 Dragon Age: Origins doesn't run 22659 1by1 player: file/song list text overlaps and becomes unreadable if enlarged 23235 If Xserver does not suppoer MIT-SHM, log get spammed 23719 Capitalism II fails to install 23803 rawdump (semi)works with dotnet20, but not mono26 24050 sparc/linux: port.c:189:2: error: #error You must implement wine_switch_to_stack for your platform 24368 Incoming: game is uncontrollably fast 24510 Blur needs msvcr90.dll.__libm_sse2_cos et al 24547 Secret of Monkey Island and WinIoEx want msvcr80.dll.?_name_internal_method@type_info@@QBEPBDPAU__type_info_node@@@Z (and possibly some msvcp80 functions) 24720 Oblivion crashes, debugger NOT started 24848 .NET 1.1 uninstall hangs 24974 D3D Texture formats INTZ and NULL are not supported 25107 When panning on SeaClear, bits of the chart get 'left behind' 25195 WINE msi does not uninstall files correctly and does not update registry 25201 wine: Call from 0x7b838b62 to unimplemented function mscoree.dll.GetFileVersion 25254 AutoCAD Mechanical 2005 PL: Fails to install 25268 chm help viewer: blank help pages 25331 Visual C++ 2005 Express install fails 25456 ws2_32:sock tests fail for nearly everyone 25478 MS Office Pro 2010 Trial: activation over the internet fails 25538 Heroes of Newerth needs native msvcr80 25544 Mafia 2: Fails to start 25583 Starcraft II fails to start 25636 Mirror's Edge crashes when loading the first mission 25655 Anarchy Online crashes on start-up 25690 Silverfall fails to start (possible Securom issue) 25691 ImageList_Duplicate doesn't correctly duplicate full length of has_alpha byte array 25695 Solo Defender crashes on start, needs msvcr90.dll._realloc_crt 25743 Burger Shop 2 sets invalid permissions on launch 25830 urlmon:sec_mgr tests fail on clang 25845 Compiling fails in kernel32 --without-curses 25856 Unable to type - in cmd anymore. 25860 Raid over Moscow fails to start 25874 tray icon in gnome panel corruption 25882 Eve online crashes with builtin msvcr80 on unimplemented function _wsopen_s 25883 Stalker pripyat benchmark crashes with builtin msvcr80 on unimplemented function _sopen_s 25893 shell32:autocomplete test fails under WINEDEBUG=warn+heap 25910 Notepad tries to open a file using wrong sharing mode 25914 Dead Space 2 exits with error 25925 Bioshock: installer autopatcher fails verification 25926 part of subwindow sheared by line 25943 MSI doesn't delete Skype (5.1) files upon deinstallation 25946 gdi32/font tests fail on ubuntu x86_64 25964 wine builtin IE crash with CNCBSecPkg_EN.exe installed : unimplemented function ntoskrnl.exe.IoGetDeviceInterfaces ---------------------------------------------------------------- Changes since 1.3.12: Akihiro Sagawa (2): po: Update Japanese translation. wrc: Don't match a po message if a same msgid message is defined, but its msgctxt is null. Alexander Law (1): programs/notepad: Correct sharing mode for opening file in notepad. Alexander Morozov (10): shell32/tests: Add tests for IShellDispatch::NameSpace. shell32/tests: Fix test failure on some NT4. shell32: Implement IShellDispatch::NameSpace. shell32: Partially implement Folder::get_Title. winemapi: Implement MAPIResolveName. winemapi: Address can contain "SMTP:". shell32: Release iTypeInfo on error. shell32/tests: Add tests for FolderItem::get_Path. ntoskrnl.exe: Add stub for IoGetDeviceInterfaces. shell32/tests: NT4 doesn't have the Folder2 interface. Alexander Scott-Johns (10): ole32: Add support for rendering METAFILEPICT clipboard objects. ole32: Add support for rendering HBITMAP clipboard objects. user32/tests: Test getting the data from synthesized clipboard formats. winex11.drv: Implement synthesizing the CF_ENHMETAFILE clipboard format from CF_METAFILEPICT. user32: Partially fix clipboard viewer infinite recursion bug. ole32: Fix error handling in get_data_from_metafilepict and get_data_from_bitmap. winex11.drv: Remove broken HeapFree call. notepad: Load UTF-8 encoding name from resources instead of using GetCPInfoEx. winex11.drv: Remove unused constant, and fix a comment. winex11.drv: Improve error handling in bitmap synthesizing code. Alexandre Julliard (53): dbghelp: Use Dwarf debug info even when part of it is missing. wmc: Add a copy of the strmake utility function. wmc: Store input file location for each individual message. wmc: Add support for generating a po template file. wmc: Add support for generating message translations based on po files. makefiles: Add rules to update po files from .mc files in maintainer mode. kernel32: Convert message translations to po files. winefile: Recover some resources that were lost during the po conversion. iccvid: Recover some resources that were lost during the po conversion. msvcrt: Implemented __control87_2. msvcrt: Implemented _statusfp2. msvcrt: Implemented _clearfp for SSE2 and x86_64. msvcrt: Implemented _fpreset for SSE2 and x86_64. msvcrt: Implemented _set_controlfp. msvcrt: Add a non-optimized implementation for the SSE2 math functions. include: Add a prototype for RtlUnwindEx on x86_64. ntdll: Capture the context inside RtlUnwindEx instead of assuming it's already initialized. ntdll: Avoid copying and restoring the context in RtlCaptureContext for x86_64. ntdll: Implement set_cpu_context for x86_64 directly instead of using the winebuild-generated code. ntdll: Implement RtlRaiseException for x86_64 directly instead of using the winebuild-generated code. ntdll: Get rid of support for register entry points on x86_64. winebuild: Get rid of support for register entry points on x86_64. configure: Automatically remove obsolete entries in po files. makedep: Add dependencies for the msg.pot file. kernel32: Add proper English messages for all error codes. winedbg: Add dumping of floating point registers for x86_64. dbghelp: Add a helper function to determine the name of the wine loader. dbghelp: Use wine64 as loader name on 64-bit. user32: Propagate the LoadImage flags into the low-level loader functions. user32: Fix LoadImage behavior with zero size and no LR_DEFAULTSIZE. server: Create anonymous file mappings in the config directory if the server directory is mounted noexec. ntdll: Fix frame address check in RtlCaptureStackBackTrace to match what RtlUnwind does. dbghelp: Fix an uninitialized return value. ntdll/tests: Avoid sizeof in a trace. opencl: Avoid size_t in traces. winebuild: Don't remove stdcall decorations on non-x86. ntdll: Avoid copying and restoring the context in RtlCaptureContext for i386. ntdll: Add a helper function for checking stack frame limits. ntdll: Add support for longjmp in RtlUnwindEx. msvcrt: longjmp doesn't have a return value. msvcrt: Implement longjmp for x86_64. setupapi: Fix access rights for cabinet creation. cabarc: Initial version of the cabarc.exe tool, with support for creating a cabinet. cabarc: Add support for listing and extracting cabinets. cabinet: Use constants instead of hard-coded numbers for file open flags. cabinet: Replace the fci_set_error macro by a proper function. cabinet: Call FCI function pointers explicitly instead of hiding them inside macros. cabinet: Pass an FCI pointer to internal functions instead of a handle. cabinet: Move the internal FCI structure to fci.c. cabinet: Add a helper function to set error code in FDI. cabinet: Pass an FDI pointer to internal functions instead of a handle. cabinet: Call FDI function pointers explicitly instead of hiding them inside macros. cabinet: Move internal FDI definitions to fdi.c. Alistair Leslie-Hughes (1): mshtml: Implement IHTMLStyle put_borderTopColor. Andrew Nguyen (13): server: Filter the WOW64 registry access flags before performing the access check. shell32/tests: Release the IAutoComplete interface on a failure path. shell32: Improve initialization state and parameter handling in IAutoComplete::Init. shell32: Store the autocompletion object pointer in a window property rather than in the window user data. shell32: Keep at least one reference to the autocompletion object at initialization until the edit window is destroyed. ntdll: Fix one-time warning message output. msvcr90/tests: Avoid casting away const in comparison functions. ntdll/tests: Avoid casting away const in comparison functions. dxdiagn: Avoid zeroing memory in container functions. dxdiagn: Convert the container linked list to a standard Wine list. dxdiagn: Convert the property linked list to a standard Wine list. dxdiagn: Simplify the root container initialization. dxdiagn: Avoid caching a single instance of the root container. Andrà Hentschel (3): gameux: Only trace on success (clang). mountmgr: Use define instead of hardcoded value. kernel32: Use define instead of hardcoded value. Aurimas FiÅeras (2): po: Update Lithuanian translation. po: Update Lithuanian translation. Austin English (6): advapi32/tests: Make sure to use return value (LLVM/Clang). wintrust/tests: Make sure return values are used (LLVM/Clang). wintrust/tests: Make sure return values are used (LLVM/Clang). wintrust/tests: Make sure return values are used (LLVM/Clang). wintrust: Remove a dead assignment (LLVM/Clang). advapi32/tests: Make sure to use return value (LLVM/Clang). Charles Davis (6): dinput: Don't link to/include Carbon on Mac OS X. ntdll: Check for case-insensitive volumes. winecoreaudio: Don't use Component Manager on Mac OS 10.6. winecoreaudio: Fix deprecation warnings in audiounit.c. winecoreaudio: Fix deprecation warnings in audio.c. winecoreaudio: Fix deprecation warnings in mixer.c. David Hedberg (1): gdi32: Stay within the clipping area when painting text background. Detlef Riekenberg (5): kernel32: Don't mask when printing unsupported flags in load_library. msvcr90: Implement _stat32, _fstat32, _wstat32. include: Add missing _stat64i32 / _stat32i64. msvcrt: Add private define and header tests for _set_error_mode options. msvcrt: Use the _set_error_mode value to switch between a dialogbox and stderr for C runtime messages. Dmitry Timoshkov (3): winex11.drv: Associate the real DC transformation with cached font data. gdi32: Add ExtSelectClipRgn() tests for memory and window DCs. winex11.drv: Make sure that default clipping region exists before calling ExcludeUpdateRgn(). Eric Pouech (13): kernel32: Added missing include to term.c. kernel32: In edit line, fix the insert key management. kernel32: No longer init the terminfo database nor application key mode when 0 or 1 are not bound to a tty. kernel32: Properly manage UTF-8 (and any wcs) input strings. kernel32: Added support for ctrl-home (aka clear from beginning of line) in line edition in win32 mode. kernel32: Store key len in dbkey_pair structure for efficiency reasons. kernel32: Added support for extended capacities in terminfo for xterm-like terminals. kernel32: Added shift & ctrl modifiers for function keys. kernel32: Use binary search for key lookup in terminfo generated data. winedump: Added definition and dumping of thread local variables. dbghelp: Added support for variables in thread storage. dbghelp: Properly declare variables with thread storage from codeview debug format. winedbg: Added support for variables with thread storage. Greg Geldorp (8): gdi32/tests: Fix font tests on Arabic machines. user32/tests: Fix edit tests. riched20/tests: Fix editor tests. riched32/tests: Fix editor tests. shell32/tests: Remove shlwapi dependency. msi/tests: Check 64-bit reg view if key not present in 32-bit view. shell32/tests: Use long file name. winmm/tests: Skip some tests on VMware. Hans Leidekker (22): msi: Don't interpret assembly name attributes. msi: Implement the MsiPublishAssemblies and MsiUnpublishAssemblies standard actions. wininet/tests: Trace errors from InternetReadFile in test_basic_request. msi: Check the return value of fetch_int (clang). msi/tests: Consistently test return values (clang). msi: Check the return value of IActiveScript_AddNamedItem (clang). msi: Make sure the return value is initialized in save_table (clang). msi: Use a return value (clang). msi/tests: Test a return value (clang). msi: Check a return value (clang). msi: Return the correct disk prompt size from MsiSourceListEnumMediaDisksW (clang). msi: Initialize a variable in get_patch_product_codes (clang). msi: Skip rollback custom actions. winhttp/tests: Test a return value (clang). mountmgr: Add a stub implementation of ioctl 0x560000. kernel32/tests: Add a test for ioctl 0x560000. programs: Add a stubbed PlugPlay service. hnetcfg: Return success from fw_app_put_Enabled. msi: Reset file attributes before removing a file. programs: Add winemsibuilder. msi: Handle out-of-memory condition in encode_streamname. msi: Try harder to remove non-persistent directories. Henri Verbeet (40): wined3d: Remove IWineD3DSurface::RealizePalette() from the public interface. wined3d: Remove IWineD3DSurface::DrawOverlay() from the public interface. wined3d: WINED3DFMT_INTZ is a FOURCC format. wined3d: Use dot() instead of length() in shader_glsl_nrm(). wined3d: Disable vertex shader output clamping. d3d10: Remove a redundant assignment in parse_fx10_object() (LLVM/Clang). d3d9: Remove some useless ERRs (LLVM/Clang). d3d8: Remove a useless ERR (LLVM/Clang). wined3d: Do checks at the start of surface_init() (LLVM/Clang). wined3d: Verify we have at least one framebuffer attachment before doing clears or draws. wined3d: Add support for the NULL format. d3d8/tests: Add a test for the NULL format. d3d9/tests: Add a test for the NULL format. wined3d: Set all render targets to NULL in IWineD3DDeviceImpl_Uninit3D(). d3d9: Check the correct swapchain in IDirect3DDevice9Impl_GetSwapChain() (LLVM/Clang). ddraw: Link directly to wined3d. widl: Support forward type declarations. wined3d: Set color / depth / stencil surfaces to NULL before releasing them in IWineD3DDeviceImpl_Uninit3D(). wined3d: Remove COM from the stateblock. wined3d: Get rid of the IWineD3DStateBlock typedef. wined3d: Get rid of the IWineD3DStateBlockImpl typedef. d3d8/tests: Release doesn't return a HRESULT (LLVM/Clang). d3d9/tests: Check ColorFill() return codes in color_fill_test() (LLVM/Clang). wined3d: Just fail if the texture type is not supported in create_glsl_blt_shader() (LLVM/Clang). wined3d: Pass a const adapter to the format caps checking functions. d3d9/tests: Check another return value in maxmip_test() (LLVM/Clang). wined3d: Make volumetexture_ops static. wined3d: Remove COM from IWineD3D. wined3d: Get rid of the IWineD3D typedefs. wined3d: Check if formats are supported as render target in srgbwrite_format_test(). winex11.drv: Only query for XShm on first use. wined3d: Remove COM from the vertex declaration. wined3d: Get rid of the IWineD3DVertexDeclaration typedefs. wined3d: Remove COM from the palette. wined3d: Get rid of the IWineD3DPalette typedefs. wined3d: Remove COM from the clipper implementation. wined3d: Get rid of the IWineD3DClipper typedefs. wined3d: Use an internal call table for query operations. wined3d: Remove COM from the query implementation. wined3d: Get rid of the IWineD3DQuery typedefs. Huw Davies (3): widl: Initialise [out] only parameters if they are user types or interface pointers. widl: Don't dereference if the referenced type is a user type. rpcrt4/tests: Add a test for marshalling a pointer to a user type, where the user type is itself a pointer. Hwang YunSong (1): po: Update Korean resource. Iain Arnell (2): gdiplus: C++ fixes for headers. gdiplus: Qualify reference to Gdiplus::Pixelformat. Jacek Caban (12): urlmon: Fixed key name size and format in open_zone_key. jscript: Fixed some clang warnings. mshtml: Added script execution time tests. mshtml: Added support for recursive script runners. wininet: Handles handling clean up. wininet: Keep handles invalid but reserved in InternetCloseHandle. wininet: Added more InternetCloseHandle tests. wininet: Moved creation of an object and allocating handles to common function. mshtml: Don't try forwarding calls to Gecko that are not implemented there anyways. wininet: Moved freeing object to WININET_Release. wininet: status_string clean up. mshtml: Added nsIURI::SetSpec implementation. Joris Huizer (1): rpcrt4: Reduce scope of variable (Clang). Juan Lang (7): crypt32/tests: Test return value rather than output buffer before checking buffer contents (clang). crypt32/tests: Test some return values (clang). crypt32/tests: Remove dead assignments (clang). crypt32/tests: Don't assign a return value that's never checked (clang). crypt32/tests: Add tests that show that CertRDNValueToStr doesn't quote (based on a patch by Christian Inci). crypt32/tests: Test CertNameToStr's quoting behavior with CERT_SIMPLE_NAME_STR. crypt32: Fix string quoting in CertRDNValueToStrA/W and CertNameToStrA/W. Ken Thomases (1): mountmgr: Balance volume references in add_volume(). Kusanagi Kouichi (7): kernel32: Include term.h conditionally. gdi32/tests: Add some more tests for GetCharABCWidthsA. gdi32: Reject invalid character range in GetCharABCWidthsA. gdi32: Upper 24 bits of a character range must be same. gdi32/tests: Consolidate identity matrices. gdi32/tests: Add tests for GetGlyphOutlineA. gdi32: Check if a character is double byte or single byte. LoÃc Maury (1): ntdll : Implement CDROM_Verify to work on Mac OS X. Marcus Meissner (2): ws2_32: Implemented SO_CONNECT_TIME stub. user32: Get MDI icon as close the "small icon" as possible. Michael Stefaniuc (43): ddraw: COM cleanup for the IClassFactory iface. ddrawex: COM cleanup for the IClassFactory iface. ddrawex: COM cleanup for the IDirectDrawFactory iface. ddrawex: COM cleanup for the IDirectDraw iface. ddrawex: COM cleanup for the IDirectDraw2 iface. ddrawex: COM cleanup for the IDirectDraw3 iface. ddrawex: Rename impl_from_dd4() to impl_from_IDirectDraw4(). ddrawex: COM cleanup for the IDirectDraw4 iface. d3d8: COM cleanup for the IDirect3D8 iface. avifil32: Use ifaces instead of vtbl pointers in IAVIEditStreamImpl. avifil32: Avoid forward declarations of iface methods. msxml3: COM cleanup for the IBindStatusCallback iface. mstask: COM cleanup for the IClassFactory iface. mstask: COM cleanup for the ITaskTrigger iface. mstask: COM cleanup for the ITaskScheduler iface. mstask: Use ifaces instead of vtbl pointers in TaskImpl. mapi32: COM cleanup for the IMalloc iface. sti: COM cleanup for sti.c. msxml3: COM cleanup for the IXMLDOMNode iface in xmlnode. msxml3: COM cleanup for the IXMLDOMNode iface in unknode. ddrawex: Use unsafe_impl_from_IDirectDrawSurface3() for application provided ifaces. ddrawex: Rename impl_from_dds3() to impl_from_IDirectDrawSurface3(). ddrawex: COM cleanup for the IDirectDrawSurface3 iface. d3dx9_36/tests: COM cleanup for the ID3DXInclude iface. d3dcompiler_43/tests: COM cleanup for the ID3DInclude iface. d3d8: Pass an object instead of an iface to an internal function. d3dx9_36: COM cleanup for the ID3DXEffect iface. d3dx9_36: COM cleanup for the ID3DXEffectPool iface. d3dx9_36: COM cleanup for the ID3DXInclude iface. d3dx9_36: COM cleanup for the ID3DXBuffer iface. d3dx9_36: COM cleanup for the ID3DXFont iface. d3dx9_36: COM cleanup for the ID3DXMatrixStack iface. d3dx9_36: COM cleanup for the ID3DXMesh iface. d3dx9_36: COM cleanup for the ID3DXSprite iface. shell32: Use ifaces instead of vtbl pointers in RecycleBin. d3d8: Use impl_from_IDirect3DDevice8() instead of the iface to object cast. d3d8: Finish the COM cleanup of the IDirect3DDevice8 iface. d3d8: COM cleanup for the IWineD3DDeviceParent_iface. d3d8: COM cleanup for the IDirect3DVolume8 iface. d3d8: COM cleanup for the IDirect3DSwapChain8 iface. d3d8: Remove the unused struct IDirect3DResource8Impl. d3d8: COM cleanup for the IDirect3DCubeTexture8 iface. d3d8: COM cleanup for the IDirect3DTexture8 iface. Mike Kaplinskiy (6): ws2_32/tests: Add a test for an overlapped send. ws2_32: Allow sending FD_WRITE right after scheduling the async. ws2_32: Fix up iovecs after transmission in WS2_send instead of WS2_sendto. ws2_32: Use the iosb to keep track of how many bytes we sent. ws2_32: Finish an overlapped send only if we sent everything. server: Fix connect failures on newer kernels. Nikolay Sivov (22): shell32: Fix a parent PIDL leak (Valgrind). shell32/tests: Fix couple PIDL leaks in tests. oleaut32/tests: Fix safearray leaks, test return value after array destruction. oleaut32: Unmarshalled safearray is always unlocked. msxml3: Fix invalid read before allocated block (Valgrind). msxml3: Fix interface leak (Valgrind). urlmon/tests: Fix a leak in test (Valgrind). oleaut32: Fix a couple of leaks on typeinfo release (Valgrind). msvcrt: Implemented _sopen_s. msvcrt: Implement _wsopen_s. msvcrt: Forward _realloc_crt to realloc. oleaut32: Fix default parameter variant leak (Valgrind). comctl32/tests: Initialize item mask on item insert (Valgrind). explorerframe/tests: Initialize hit test point before first use (Valgrind). shlwapi/tests: Reset cookie after service revoked (Valgrind). shell32/tests: Fix a dependency on unimplemented function call (Valgrind). msvcrt: Implement _fcvt_s(). oleaut32/tests: Fix a IRecordInfo leak (Valgrind). oleaut32/tests: Fix a safearray leak (Valgrind). ntdll: Fix a compile time warning. msvcrt: Use pointer exchange to set demangled name instead of section lock. msvcrt: Partially implement type_info::name_internal_method(). Paul Vriens (2): explorerframe/tests: Don't compare potentially uninitialized variables (Coverity). shdocvw: Initialize variable (Coverity). Piotr Caban (2): mshtml: Abort more request in abort_document_bindings. mshtml: Make sure previous request is stopped before starting new request in IPersistMoniker and IPersistStreamInit. Reece Dunn (1): hlink/tests: Add hres checks for the IHlink_GetMonikerReference calls (clang). Stefan DÃsinger (3): d3d9: Use a proper window class in the device tests. d3d9: Work around an odd nvidia windows bug. d3d9: Add an sRGB format test. Stefan Reimer (2): winemp3: Fixed exit condition within decoding loop. wined3d: Adding AMD HD5670, HD5570, HD5550, HD5450 detection. Sven Baars (1): po: Update the Dutch translation. Vincent Povirk (11): gdiplus: Factor out the gdi32 code of GdipFillRegion. gdiplus: Factor the matrix creation code out of GdipTransformPoints. gdiplus: Add a software implementation of GdipFillRegion. gdiplus: Add a software implementation of hatch brushes. gdiplus: Add a software implementation of line gradient brushes. shell32: Test links to executable filenames lacking the extension. include: Add declaration of GdipRecordMetafile. gdiplus: Stub GdipGetHemfFromMetafile. gdiplus: Test for EMF+ recording. gdiplus: Test the types of records in an empty EMF+. mscoree: Implement GetFileVersion. Vitaliy Margolen (4): dinput: Combine ASCII and Unicode device create callbacks. Add tests. dinput: Fix typo. Found by clang. dinput: Return correct error code for DIPROP_VIDPID. dinput: Ignore EV_MSC events instead of printing fixme. Wolfram Sang (1): comdlg32: Filedlg should not add extension if it contains a glob. max@xxxxxxxxxxxxxxxxx (1): ntdll: Correct 'b' parameter descriptions for _alldiv and _aulldiv. -- Alexandre Julliard julliard@xxxxxxxxxx