Wine Announcement

The Wine development release 1.1.16 is now available. What's new in this release (see below for details): - Improved SANE scanner support. - Support for digital CD audio playback. - Improved cookies management in Wininet. - Support for building stand-alone 16-bit modules. - Many fixes to the regression tests on Windows. - Various bug fixes. The source is available from the following locations: http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.1.16.tar.bz2 http://prdownloads.sourceforge.net/wine/wine-1.1.16.tar.bz2 Binary packages for various distributions will be available from: http://www.winehq.org/site/download You will find documentation on http://www.winehq.org/site/documentation You can also get the current source directly from the git repository. Check http://www.winehq.org/site/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.1.16: 3107 listview columns do not sort in Acemoney 7385 Microsoft Golf 3.0 crashes on startup 10213 Pegasus Mail: program closes when sub-program closes 10631 3DMark01 - Test4 Nature is extremely slow 11164 midtown madness 2 menus are not displayed correctly 11861 regedit does not correctly display unicode value data 11864 iTunes - Show in Windows Explorer link broken 12119 Dialog with enu does not display the menu 12345 Live For Speed S2: could not detect suitable screen modes 12701 watchtower library - listview works slow and wrong 13389 Victoria, an Empire under the sun. Crashes on startup 13676 Lemmings Revolution: does not start anymore, still did in 0.9.43. 14308 Dungeon Keeper 2 cursor fails to render correctly with hardware rendering enabled 14310 Dungeon Keeper 2 cannot be navigated with the arrow keys 14433 GuildWars 3D rendering broken 14469 America does not run 14780 FoxPro for Windows 2.5 setup.exe crashes with page fault 14964 Missing symbols in Microsoft Word (symbol.ttf is required) 14982 Supreme Commander: Lighting changes on zoom level 15063 Silent hill 4 demo crashes very early 15528 Miranda has severe problems showing history in conversation windows 15545 Photomatix Pro works in 32-bit but crashes in 64-bit Ubuntu 15559 winealsa sound regression: scratchiness/stutter in multiple games 15641 Tile Studio 2.55: Toolbar icons get resized when switching to Map mode 15907 Dragon NaturallySpeaking 10 crashes after SelectStyleFont 16199 Miranda IM options page crash 16556 Dragon NaturallySpeaking 10 New User Box displays training text incorrectly 16818 Switched Y/Z on german keybord settings 16908 memory leak in function SetWindowRgn (?) 16917 file dialog to select attchments slows down for many files 16990 Call of Duty 2 demo install fails 17050 eMule: Ends up eating all the memory (swap included) 17117 Chicken Tournament: needs ComputeSphereVisibility 17288 Keyboard stops working in Halo Demo 17369 VMware Intrastructure Client 2.5 cannot validate disk capacity while creating new VM 17373 eac3to: large files don't work - NtMapViewOfSection? 17409 crypt32/chain tests fail with +heap enabled 17411 crypt32/encode tests fail with +heap enabled 17413 riched32/editor tests fail with +heap enabled 17414 user32/dde test crashes if +heap enabled 17415 several tests (jscript:run, msi:msi, netapi32:access) crash if +heap enabled 17417 winetest causes msvcrt:file test to fail 17429 winhlp32 crash when run with no options 17490 win16 app fails with unimplemented function krnl386.exe.GetShortPathName 17500 libs/wine: Japanese character wrongly reported as invalid 17502 Portal: Prelude 1.1.5 installer has improper placement of directory selection text 17507 Scrollbars are inappropriately displayed in Ascentive Library Files installer ---------------------------------------------------------------- Changes since 1.1.15: Adam Stoelting (2): msadp32.acm: Changed pointer cast from DWORD to DWORD_PTR. winemp3.acm: Changed pointer cast from DWORD to DWORD_PTR. Alexandre Julliard (76): ntdll: Avoid null dereference in the NtCreateSymbolicLinkObject trace. ntdll: Improve debugging helper for object attributes structure. ntdll: Don't fail in NtMapViewOfSection for 4Gb+ files if an explicit size is specified. user32/tests: Another fix for lack of color cursor support. user32/tests: Add a couple of optional message, mark as todo a test that now fails consistently on Wine. user32/tests: Skip some tests if SetForegroundWindow doesn't behave correctly. user32/tests: Fix some checks of the key value in accelerators. secur32: Properly initialize the helper structure when fork support is missing. kernel32/tests: Fix the last remaining failure on NT4. kernel32/tests: Add a few more error codes for GetDiskFreeSpace. winmm/tests: Assume volume is not supported if waveGetOutVolume fails. configure: Try to avoid warnings in checks to support configuring with -Werror. configure: Don't set target flags if build and host are the same. wrc: Print better error messages for functions that set errno. user32: Make sure to not corrupt last error in the message spy. makefiles: Do not install progman, uninstaller and winebrowser in the bin directory. ntdll/tests: Don't pass uninitialized object attributes to symlink functions. shell32: Default to the more modern location for the user profile directory. user32/tests: Test for failure to change system parameters even if getting them succeeded. user32/tests: Skip message tests if queuing keyboard events doesn't work. ole32/tests: Don't hang forever in the child process. ntdll: Determine the Unix tid for the server directly in ntdll. ntdll: Move the CPU-specific handling of current TEB to the respective signal files. msvcrt: Don't try to duplicate invalid handles. Don't reset std handles if we didn't set them. user32/tests: Ignore SPI_ICONVERTICALSPACING notifications. Don't reset mouse buttons if setting failed. msctf/tests: Don't import uuid. winetest: Try to trigger the Gecko install for mshtml tests, and skip them otherwise. include: Avoid redefinition of WIN32 in twain.h. user32/tests: Try harder to make the window receive keystrokes. tests: When tracing is enabled, output the todo tests too. winetest: Get rid of the archive URL, it's no longer used. ntdll: Call pthread_sigmask directly instead of through the pthread function table. ntdll: Moved exit_thread and abort_thread functions to thread.c. ntdll: Call pthread_create and pthread_exit directly from ntdll. fonts: Re-generate fonts using the "official" fontforge version. fonts: Set the symbol flag when generating symbol.ttf. user32/tests: Skip some input tests if we fail to queue keyboard events. user32/tests: Skip some message tests if we fail to queue events. user32/tests: Remove an unreliable pixel test. user32/tests: Add some optional keystrokes for AltGr key. user32/tests: Print all the unexpected messages we received. Fix a couple of sequences. winetest: Process messages while waiting for a process to terminate. winetest: Don't try to unload mshtml, it's broken. ntdll: Don't free the thread stack and TEB while exiting, do it from the next thread. ntdll: Allocate the stack for all threads, don't rely on pthread to do it for us. libwine: Get the reverse mapping of the Unicode default char to check for invalid chars. programs: Only create executable wrappers for programs that get installed in the bin directory. winegcc: Allow creating an executable with an arbitrary extension. configure: Disable VxD and DOS modules when 16-bit support is disabled. kernel32: Print a nicer error message when 16-bit/DOS apps cannot be launched. user32/tests: Skip more input tests if we can't queue keyboard input. user32/tests: Add a couple of optional messages. winhlp32: Fix a crash when started without arguments. credui: Fix old-style dependency line in the makefile. user32: Move a few 16-bit user functions to user16.c where they belong. libwine: Try to load all modules in the programs directory, not just those with .exe extension. user32/tests: Fix a few more input test failures on Windows. user32/tests: Add some more optional messages. msi: Fix handling of buffer sizes in MsiEnumPatchesA and avoid a redundant call to MsiEnumPatchesW. msi/tests: Add some tests for MsiEnumPatchesW, fix a few failures on XP. ntdll: Default to WinXP version if there's nothing in the registry. programs: Get rid of the remaining binary wrappers, they break out-of-tree builds. user32/tests: Fix some input tests on Win9x and NT4. makefiles: Avoid nested variable expansion that doesn't work on BSD make. winebuild: Make the 16-bit DOS header a local symbol. winebuild: Allow the module entry point to be NULL. winebuild: Add support for generating stand-alone 16-bit modules. winecrt0: Add entry point code for stand-alone 16-bit executables. kernel32: Add support for loading stand-alone 16-bit modules. kernel32: Make sure the process has an entry point before starting it. kernel32: Make winoldap.mod into a stand-alone 16-bit executable. kernel32: Make winhelp.exe into a stand-alone 16-bit executable. configure: Disable 16-bit code by default for Mingw builds. user32/tests: Fix some message sequences for Win9x. winecfg: Offer a few more dlls in the load order drop-down list. winebuild: Don't prefix local symbols with an underscore. Alistair Leslie-Hughes (34): urlmon: Correctly test to see if PutProperty_CLASSIDPROP is called. urlmon: Fix PutProperty_CLASSIDPROP check under win98 to w2k. mshtml: Add VT_I4 support to set_nsstyle_attr_var. mshtml: Implement IHTMLStyle get/put minHeight. mshtml: Implement IHTMLStyle_get_marginRight. mshtml: Implement IHTMLStyle_get_marginLeft. mshtml: Implement IHTMLCurrentStyle_get_position. mshtml: Implement IHTMLCurrentStyle_get_fontFamily. mshtml: Implement IHTMLCurrentStyle_get_fontStyle. mshtml: Implement IHTMLCurrentStyle_get_backgroundImage. mshtml: Implement IHTMLCurrentStyle_get_fontVariant. mshtml: Implement IHTMLCurrentStyle_get_borderTopStyle. mshtml: Implement IHTMLCurrentStyle_get_borderRightStyle. mshtml: Implement IHTMLCurrentStyle_get_borderBottomStyle. mshtml: Implement IHTMLCurrentStyle_get_borderLeftStyle. mshtml: Implement IHTMLCurrentStyle_get_textAlign. mshtml: Implement IHTMLCurrentStyle_get_textDecoration. mshtml: Implement IHTMLCurrentStyle_get_cursor. mshtml: Implement IHTMLCurrentStyle_get_fontWeight. mshtml: Implement IHTMLCurrentStyle_get_fontSize. mshtml: Implement IHTMLCurrentStyle_get_left. mshtml: Implement IHTMLCurrentStyle_get_top. mshtml: Implement IHTMLCurrentStyle_get_width. mshtml: Implement IHTMLCurrentStyle_get_height. mshtml: Implement IHTMLCurrentStyle_get_paddingLeft. mshtml: Implement IHTMLCurrentStyle_get_zIndex. mshtml: Implement IHTMLCurrentStyle_get_verticalAlign. mshtml: Implement IHTMLCurrentStyle_get_marginRight. mshtml: Implement IHTMLCurrentStyle_get_marginLeft. mshtml: Implement IHTMLStyle get/put backgroundRepeat. mshtml: Implement IHTMLCurrentStyle_get_backgroundRepeat. mshtml: Add idl for IPersistHistory interface. uuid: Add IID_PersistHistory GUID. mshtml: Show IPersistHistory interface is supported. Anders Jonsson (4): browseui: Add Swedish translation. taskmgr: Add Swedish translation. oleview: Add Swedish translation. winemine: Change max number of mines to (cols-1)*(rows-1). Andrew Nguyen (5): include: Fix mismatched extern declaration in aclui.h. tapi32: Stub lineGetProviderListW. tapi32: Stub lineAddProviderW. hid: Stub HidD_GetFeature. hid: Stub HidD_SetFeature. Andrew Talbot (2): rsaenh: Replace malloc/realloc with HeapAlloc/HeapReAlloc. twain_32: Replace realloc() and strdup(). Aric Stewart (21): gdiplus: In GdipDrawString do not NULL terminate the buffer. It is unneeded and overruns the buffer. wininet: use debugstr_a in NETCON_getNextLine TRACE to avoid overflow on long lines. msctf: Add Enable key and User key for language profile. msctf: Implement ITfInputProcessorProfiles::EnableLanguageProfile. msctf: Implement ITfInputProcessorProfiles::EnableLanguageProfileByDefault. msctf: Implement ITfInputProcessorProfiles::IsEnabledLanguageProfile. wininet: Parse cookie information from cookie value. wininet: When cracking a cookie url discard the webpage and ensure at least a path of '/'. wininet: Add and match paths for cookies. wininet: Complicated cookie value set/get tests. wininet: Make use of improved cookie functions and cookie paths. msctf: Added msctf tests. wininet: Handle cookie expiration. msctf: Implement ITfInputProcessorProfiles::Unregister. msctf: Define TIP Category values. msctf: Add tests for ITfCategoryMgr::UnregisterCategory and ITfCategoryMgr::RegisterCategory. msctf: Define TF_LANGUAGEPROFILE. msctf: Implement ITfInputProcessorProfiles::EnumInputProcessorInfo. msctf: Implement ITfInputProcessorProfiles::EnumLanguageProfiles. msctf: Implement ITfCategoryMgr::FindClosestCategory. msctf: Use ITfCategoryMgr::FindClosestCategory to set catid when enuming language profiles. Artem Reznikov (1): shlwapi: Ukranian translation. Aurimas Fischer (13): comdlg32: Add Lithuanian translation. wineps.drv: Add Lithuanian translation. winecfg: Add Lithuanian translation. shell32: Add Lithuanian translation. comdlg32: Unify/fix some Lithuanian translated strings. winecfg: Unify/fix some Lithuanian translated strings. winspool.drv: Add Lithuanian translation. winspool.drv: Properly free destinations list returned by CUPS. comdlg32: Fix another inconsistency in Lithuanian translation. winspool.drv: Fix another inconsistency in Lithuanian translation. notepad: Fix more inconsistencies in Lithuanian translation. user32: Add Lithuanian translation. mshtml: Add Lithuanian translation. Austin English (3): kernel32: Add test for renaming file over itself. user32: Add a missing HeapFree. dbghelp: Change pointer cast to DWORD_PTR. Chris Robinson (2): mcicda: Play back an audio CD digitally, when possible. mcicda: Partially handle Play notifications. Christian Costa (1): mciqtz32: Add stubbed mciqtz32.dll (part of DirectShow). David Adam (7): d3drm: Remove unneeded includes. d3drm: Implement the spherical interpolation part of D3DRMQuaternionSlerp. d3drm: Allow output pointer to be equal to input pointer. d3drm: Simplify some functions. d3dx8: Implement the spherical interpolation part for D3DXQuaternionSlerp. d3drm: D3DRMQuaternionSlerp should be tested against returned Windows values. ddraw: Implement ComputeSphereVisibility. David Korth (1): winex11.drv: Map Super_L, Super_R, and Menu keys correctly. Detlef Riekenberg (8): spoolss: Properly initialize the backends. spoolss: Implement EnumPorts. fusion/tests: Do not use an hardcoded path for the windows directory. fusion/tests: Fix remaining win98 failures in asmcache. mshtml/tests: Fix typos from copy&paste. mshtml/tests: Fix text in ok(). shdocvw/tests: Dump the guid for additional interfaces. spoolss: Implement GetPrinterDriverDirectoryW. Dmitry Timoshkov (2): mlang: Implement IMLangFontLink_GetStrCodePages. gdi32: Revert an unrelated part of 028617b90ba586bdb30723c700eea888c159ada7. Dylan Smith (12): richedit: Removed unused ME_Document structure. hhctrl.ocx: Handle quoted filenames in doWinMain. richedit: Added missing initialization of nAvailWidth for ME_TextEditor. richedit: Don't show vertical scrollbar for single line controls. richedit: Fixed scrollbar visiblility calculation after SetScrollInfo. richedit: Return FALSE for EM_LINESCROLL with single line control. richedit: EM_SHOWSCROLLBAR hides scrollbars for less than page of text. richedit: Never wrap for single line controls. wordpad: Show error when user tries to add more than max tab stops. wordpad: Sort tab stops by numeric value rather than as string. richedit: EM_SETOPTIONS modify format rect when selbar setting change. richedit: Avoid crashing if TxSendMessage is called with NULL plresult. Eddie Leung (1): msg711.acm: Pointer cast changed to DWORD_PTR. Francois Gouget (42): crypt32: Merge two traces. wintrust: Make WINTRUST_ReAlloc() static. winetest: Annotate xmalloc() and xrealloc() with allocation size attribute. wined3d: Make debug{fixup_channel_source,yuv_fixup}() static. kernel32: Fix an off-by-one error in build_envp(). mapi32/tests: Use win_skip() to skip over unimplemented functionality. user32/tests: Use win_skip() to skip over unimplemented functionality. setupapi/tests: Use win_skip() to skip over unimplemented functionality. serialui/tests: Use win_skip() to skip over unimplemented functionality. secur32/tests: Use win_skip() to skip over unimplemented functionality. rpcrt4/tests: Use win_skip() to skip over unimplemented functionality. oleaut32/tests: Use win_skip() to skip over unimplemented functionality. ntdll/tests: Use win_skip() to skip over unimplemented functionality. netapi32/tests: Use win_skip() to skip over unimplemented functionality. make_makefiles: Add 'use strict'. schannel/tests: Use win_skip() to skip over unimplemented functionality. kernel32/tests: Use win_skip() to skip over unimplemented functionality. kernel32/tests: Change to a win_skip() because we don't want to skip the GetConsoleCursorInfo(,NULL) test in Wine. imm32/tests: Use win_skip() to skip over unimplemented functionality. gdi32/tests: Use win_skip() to skip over unimplemented functionality. fusion/tests: Use win_skip() to skip over unimplemented functionality. ddraw/tests: Use win_skip() to skip over unimplemented functionality. opengl32/tests: Use win_skip() to skip over unimplemented functionality. opengl32/tests: Replace a couple of trace()s with skip()s. crypt32/tests: Use win_skip() to skip over unimplemented functionality. winemaker: Fix invalid usage of {open,close}dir() in fix_file_and_directory_names(). . winemaker: Fix handling of the global settings specified on the command line. d3d8/tests: Use win_skip() to skip over unimplemented functionality. d3d9/tests: Use win_skip() to skip over unimplemented functionality. dplayx/tests: Use win_skip() to skip over unimplemented functionality. shell32/tests: Use win_skip() to skip over unimplemented functionality. shlwapi/tests: Use win_skip() to skip over unimplemented functionality. snmpapi/tests: Use win_skip() to skip over unimplemented functionality. wininet/tests: Use win_skip() to skip over unimplemented functionality. winspool.drv/tests: Use win_skip() to skip over unimplemented functionality. wintrust/tests: Use win_skip() to skip over unimplemented functionality. comdlg32/tests: Use win_skip() to skip over unimplemented functionality. shell32: Remove WINAPI on static functions where not needed. advapi32/tests: Use win_skip() to skip over unimplemented functionality. advpack/tests: Use win_skip() to skip over unimplemented functionality. comctl32/tests: Use win_skip() to skip over unimplemented functionality. twain_32/tests: Use win_skip() to skip over unimplemented functionality. Gerald Pfeifer (2): comctl32: Simplify fifteen tooltips function invocations. comctl32: Simplify eight TOOLBAR_ function invocations. Hans Leidekker (11): fusion: Assembly version must be taken from the metadata, not the file version. fusion: Uninstall assembly used to check for presence of .NET runtime. fusion: Convert to Unicode. fusion: Assembly version numbers are WORDs. fusion: Allow spaces between attribute-value pairs in an assembly name. fusion: Don't trace contents of an out parameter. msi: Make comparison of assembly field names case insensistive. fusion: Use parsed properties for assembly enumeration instead of trying to parse the display name again. msi: Don't release view object twice in check_assembly_installed. fusion: Sort the list of assemblies built during enumeration. msi: Add reinstall tests. Henri Verbeet (35): wined3d: Allow floating point values for WINED3DDECLUSAGE_BLENDWEIGHT. wined3d: Add some traces to state handlers. d3d9: Also copy the AutoDepthStencilFormat field in GetPresentParameters(). quartz: Use a more appropriate size for the video renderer window. d3d8: Explicitly convert between D3DFORMAT and WINED3DFORMAT values. d3d9: Explicitly convert between D3DFORMAT and WINED3DFORMAT values. wined3d: Add DXGI formats to WINED3DFORMAT. dxgi: Convert DXGI_FORMAT values to WINED3DFORMAT values. d3d10core: Convert between DXGI_FORMAT and WINED3DFORMAT values. d3dx8: Don't use uninitialized memory in the D3DXQuaternionSlerp() test. d3d10core: Keep a reference to the wined3d device in the d3d10 device. wined3d: Add IWineD3DBuffer, use it in d3d10core. wined3d: Merge vertexbuffer.c with buffer.c. wined3d: Merge indexbuffer.c with buffer.c. wined3d: Add IWineD3DRendertargetView. d3d10core: Add a wined3d rendertarget view to the d3d10 rendertarget view. dxgi: Create a wined3d swapchain. dxgi: Implement IDXGISwapChain::GetBuffer(). dxgi: Initial IDXGISwapChain::Present() implementation. wined3d: Implement IWineD3DDeviceImpl_ClearRendertargetView(). wined3d: Accept WINED3DFMT_R8G8B8A8_UNORM in getColorBits(). d3d10core: Don't pass 1 for multisample type to wined3d. d3d10core: Adjust a couple of FIXMEs. d3d10: Add the ID3D10EffectType interface. d3d10: Add the ID3D10EffectVariable interface. d3d10: Add the ID3D10EffectConstantBuffer interface. d3d10: Add the ID3D10EffectTechnique interface. d3d10: Add the ID3D10Effect interface. d3d10: Add the ID3D10EffectPool interface. d3d10: Add a stub ID3D10Effect implementation. d3d10: Add the ID3D10EffectPass interface. d3d10: Add the D3D10_SHADER flags. d3d10: Add the _D3D10_SHADER_MACRO struct. d3d10: Add some code for parsing DXBC data. d3d10: Add an initial effect parser. Huw Davies (26): gdi32: Improve calculation of the character code text metrics. gdi32/tests: Only test the lowest byte of GdiRealizationInfo flags so that the test passes on Vista. gdi32/tests: GetTextFaceA called with a NULL buffer returns 0 on win98 and winMe. gdi32/tests: Win98 and WinMe actually do set error codes. gdi32/tests: Win9x doesn't ensure the facename is nul terminated. Compare the logfont one element at a time. gdi32: In a Baltic locale the last char of a symbol font is reported as 0xf8fd rather than 0xf0ff. gdi32/tests: Allow the first char code to point to glyph 0 (the .notdef glyph). inetcomm/tests: Object is a static singleton on win95. inetcomm/tests: AddRef on the stream doesn't return the ref count on win95. gdi32/tests: Win9x truncates the LONG elements of LOGFONT to 16 bit values. gdi32: The special handling of the character codes metrics for symbol fonts should be based on the presence of the MS symbol charmap rather than whether the font is enumerated as SYMBOL_CHARSET. gdi32/tests: From Vista onwards TabbedTextOut ignores justification, so remove that bit of the test. comdlg32/tests: Skip remaining tests if StartDoc fails. comdlg32/tests: Vista can return a failure from StartDoc when using the XPS driver - don't fail the test in this case. gdi32/tests: Output the required font height if the test fails. gdi32/tests: Output the requested font name on failure. gdi32: Set the font family as FF_MODERN if the panose marks it as monospaced. gdi32/tests: Add tests for the 120 dpi bitmap fonts. gdi32: Fix fractional scaling threshold. lz32/tests: Display filename on failure. gdi32/tests: Don't test the height that is 1.75 times the original font height. This is unscaled in winnt yet doubled in win9x. lz32/tests: For win9x, cBytes depends on the length of the filename. ole32/tests: win9x and winnt don't include the trailing '\0'. gdi32/tests: Add a broken() to an always true test. gdi32/tests: Don't expect the screen dc's bitmap to be mono 1x1. gdi32/tests: Winnt doesn't set last error when a NULL dc is passed to GetDIBits. Hwang YunSong(황윤성) (1): cryptui: Updated Korean resource. Igor Tarasov (5): comctl32: Make LISTVIEW_ProcessLetterKeys accept Unicode characters. comctl32: Implement LVN_ODFINDITEM. comctl32: Do not send LVN_DELETEITEM on LVM_DELETEALLITEMS for virtual listviews. comctl32: Make listview forward HDN_ITEMCLICK. comctl32: Make REBAR_StyleChanged respect wParam. Jacek Caban (6): shdocvw: Added loading tests. shdocvw: Added QueryStatus implementation. jscript: Fixed handling block_cnt in jsheap_alloc. jscript: Reset mark in jsheap_clear. jscript: Mark free memory if heap warnings are turned on. urlmon: Make HttpProtocol implementation vtbl offset independent. James Hawkins (13): fusion: Implement the IAssemblyEnum interface. fusion: Add initial implementation of IAssemblyCache::QueryAssemblyInfo. fusion: Add tests for the IAssemblyEnum interface. msi: Make sure a constant string's quotes match up. msi: Add tests for field zero of a record. msi: Set field zero to the name of the table containing the primary keys. msi: Make sure the view being updated is the same view the record was fetched from. msi: The _Tables and _Columns tables have no persistence attribute. msi: A non-temporary table cannot have a temporary primary key. msi: Don't create a temporary table that is not held. msi: Fix a failing test on win9x. msi: Trace the username to help debug test failures on certain machines. msi: Fix a failing test on win9x. Jeremy White (8): sane.ds: Get resolution from sane, instead of hard coding -1. sane.ds: Implement stub support for ICAP_PIXELFLAVOR. sane.ds: Implement NATIVEXFER/MSG_GET for RGB scans. sane.ds: Implement support for ICAP_XRESOLUTION and ICAP_YRESOLUTION. sane.ds: Add support for ICAP_BITDEPTH. sane.ds: Added support for ICAP_UNITS. sane.ds: Fully support ICAP_PIXELTYPE. sane.ds: Revise to match identity structures with partial information. Jon Parshall (1): fonts: Add the Symbol font. Juan Lang (14): crypt32: Fix a typo. snmpapi: Relax tests to fix some failures. wintrust: Fix a few failing tests. advapi32: Fix failing tests on a number of systems. odbccp32: Fix a couple failing tests, and log more information about remaining failures. oleaut32: Remove an errant semicolon. oleaut32: Constify input parameter to VarR8FromDec. oleaut32: Implement VarDecFix. oleaut32: Implement VarDecInt. crypt32: Fix some test failures on Win9x. crypt32: Properly NULL-terminate decoded UTF8 strings. crypt32: Avoid reading freed memory when encountering a cyclic chain. crypt32: Fix more test failures on Win9x. crypt32: Fix more test failures on Win9x. Juan M. Navarro (1): msvcrt/tests: Avoid size_t in printf format. Ken Thomases (3): winecoreaudio: Fix a copy-paste accident ("In" vs. "Out"). dsound: Replace a realloc-or-alloc with a free-then-alloc. dsound: Consolidate some duplicate code. Michael Karcher (1): kernel32: Free profile before reloading. Michael Stefaniuc (18): advapi32: Remove superfluous pointer casts. vwin32.vxd: Remove unused macros. vwin32.vxd: Remove superfluous pointer casts. rpcrt4: Remove superfluous pointer casts. mshtml: Remove superfluous pointer casts. gdi32: SetAbortProc is not a 16bit function but a 32bit one. wintrust/tests: Fix typos in ok() strings. msacm32.drv: dwInstance, dwParam1, dwParam2 and dwUser are DWORD_PTRs. msacm32: Split out the 16bit parts of the private header. msacm32: Fix some Win64 problems. shell32: Remove superfluous pointer casts from macros. shell32: Remove superfluous pointer casts. qcap: Remove superfluous pointer casts. imaadp32.acm: Don't truncate a pointer by casting it to a DWORD. winmm: Remove commented out code. winmm: Remove superfluous pointer casts. winemp3.acm: Remove the commented out III_dequantize_sample_ms function. winemp3.acm: Remove superfluous pointer casts. Nicolas Le Cam (1): fusion/tests: Fix a test on some platforms. Nikolay Sivov (6): gdiplus: Implemented GdipIsVisiblePathPoint with tests. gdiplus/tests: Some tests for Image raw format value. gdiplus/tests: Use expectf macro for floating point tests. gdiplus: Fix a docheader typo, add some missed headers. cmd: Always add a new line in 'type' output on single file mode. cmd: Reserve a place in buffer for NULL terminator. Paul Bryan Roberts (2): makedep: Let umask decide mode for makefiles. advapi32: Add stub for GetSecurityInfoExA. Paul Vriens (23): ddraw/tests: Don't crash on W2K. ddraw/tests: Use skip() instead of trace(). fusion/tests: Don't crash on .NET 1.x. fusion/tests: Don't use strdup to prevent crashes when freeing memory. fusion/tests: Don't crash if we have a culture attribute. gdi32/tests: Report a missing function only once. itss/tests: Fix test failures on some Win95 and NT4 boxes. crypt32/tests: Don't crash on Win9x. fusion/tests: Fix a test failure on Win64. crypt32/tests: Don't crash on Win9x (test_msg_get_and_verify_signer). crypt32/tests: Prevent some crashes on Win9x (test_decode_msg). crypt32/tests: Prevent a crash on Win9x (test_data_msg). crypt32/tests: Prevent some crashes on Win9x (test_msg_control). winetest: Don't use W-functions in winetest to avoid issues on Win9x. winetest: Extend PATH if we have dlls that only come with .NET. d3d8/tests: Fix a test failure on VMware. d3d8/tests: Fix a test failure on some boxes. shlwapi/tests: Fix a few test failures on Win95 and some W2K. fusion/tests: Directories with no dll or exe are not enumerated. ddrawex/tests: Fix some test failures on W95. shlwapi/tests: Fix remaining test failures on several platforms. fusion/tests: Fix a few test failures on .NET 1.x. fusion/tests: Fix some test failures on .NET 1.x. Rein Klazes (7): ole32: In PropVariantCopy() fix calculation size of array that contain pointers, not characters. comctl32: Fix for owner draw statusbar. user32: Do not handle WM_ENDSESSION in DefWindowProc() with test. user32/resources: Remove the "switch to... <Ctrl+Esc>" item from the system menu. user32: Implement support for HBMENU_POPUP_* magic menu bitmaps and use them to decorate the system menu. user32: Refine the size calculations for menu items with HBMMENU_POPUP magic bitmaps with some conformance tests. user32: In SetMenuInfo() implement the MIM_APPLYTOSUBMENUS. Also set last error if called with invalid parameters with tests. Ricardo Filipe (6): setupapi: Add missing header values for SetupPromptForDisk. setupapi: Make hinstance global for all dialogs. setupapi: Implement SetupPromptForDiskW with only Cancel button active. setupapi: Initiate resources of SetupPromptForDisk dialog. setupapi: Enable Browse action on SetupPromptForDisk dialog. setupapi: Implement Ok button action in SetupPromptForDiskW dialog. Rob Shearman (22): widl: Fix marshalling/unmarshalling of enum arguments. widl: Call Struct and Union phase functions for reference pointers to structures and unions. widl: Only duplicate a type if absolutely necessary. widl: Call Pointer function for freeing non-conformant strings and for all phases for returned non-conformant strings, as is done for conformant strings. include: Add WDT_INPROC64_CALL cases to unions in wtypes.idl. ole32: Round the extected size in the marshal and moniker tests using the results of sizing a global, not a heap pointer. widl: Fix typos in write_remoting_arg which caused ref pointers to unions to not result in direct calls to NonEncapsulatedUnion/EncapsulatedUnion functions. winejoystick.drv: Use CP_UNIXCP instead of CP_ACP when converting a string that comes from the OS. wineoss.drv: Use CP_UNIXCP instead of CP_ACP for converting strings that come from system library functions or system headers. gdi32: Move 16-bit functions not exported in gdi32.dll into files compiled only when 16-bit functionality is enabled. widl: Don't directly access the type structure when determining the types in expressions. widl: Use type_get_type to determine the types during statement enumeration. widl: Use type_get_type to determine the types of types during header writing. widl: Use type_get_type to determine the types of types during parsing and checking. widl: Use type_get_type to determine the types of types during typelib generation. widl: Use type_get_type to determine the types of types during C client, server and proxy code generation. widl: Add typegen_detect_type and use it. imm32: Fix crash in DllMain when FreeLibrary is called from a thread which existed before the DLL was loaded. imm32: Lazily allocated thread-local data. rpcrt4: Fix use of uninitialised variable in NdrDllRegisterProxy. widl: Ignore pointer attributes applied to interface pointers. widl: Only classify top-level pointers as ref pointers if they don't have any other pointer attributes. Stefan Dösinger (8): wined3d: Duplicate GL textures for srgb switching. wined3d: Add a debug function for surface locations. wined3d: Pass the requested srgb flag to PreLoad. wined3d: Properly update last_was_pshader. d3d9: Add an alpha blending test. wined3d: Put the color_correction calls into the instruction handlers. wined3d: Make shader_glsl_get_sample_function aware of *Lod functions. wined3d: Create a common sampling function in GLSL. Stefano Guidoni (1): msacm32: Typo in Italian resource file. Thomas Kho (1): iphlpapi: Fix Solaris build error due to ERR redefinition. Vincent Povirk (14): gdiplus: Handle negative stride in GdipCreateBitmapFromScan0. gdiplus: Fix GdipCreateBitmapFromHBITMAP flipping images vertically. include: Add IShellItem to headers. shell32: Add stub implementation of IShellItem. shell32: Partially implement SHCreateShellItem. include: Add IPersistIDList to headers. shell32: Add IPersistIDList interface to ShellItem objects. shell32: Implement UnixFolder_IShellFolder2_GetDefaultColumn. mapi32: Add version resource. wine.inf: Create a fake mapi32.dll. shell32: Implement Get/SetIDList on ShellItem objects. shell32: Add a message for opening files with no association. kernel32/tests: Remove a redundant check for ERROR_CALL_NOT_IMPLEMENTED. kernel32/tests: Fix overlapped named pipe test. Vitaliy Margolen (2): dinput: Let each device decide which hook event to skip. kernel32: Implement GetShortPathName16. -- Alexandre Julliard julliard@winehq.org