widl: Move the pointer referent, array element, function return type and interface...
[wine/hacks.git] / ANNOUNCE
blob8385cc10020851af3247913f46062a8e1ea4c232
1 The Wine development release 1.1.16 is now available.
3 What's new in this release (see below for details):
4   - Improved SANE scanner support.
5   - Support for digital CD audio playback.
6   - Improved cookies management in Wininet.
7   - Support for building stand-alone 16-bit modules.
8   - Many fixes to the regression tests on Windows.
9   - Various bug fixes.
11 The source is available from the following locations:
13   http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.1.16.tar.bz2
14   http://prdownloads.sourceforge.net/wine/wine-1.1.16.tar.bz2
16 Binary packages for various distributions will be available from:
18   http://www.winehq.org/site/download
20 You will find documentation on http://www.winehq.org/site/documentation
22 You can also get the current source directly from the git
23 repository. Check http://www.winehq.org/site/git for details.
25 Wine is available thanks to the work of many people. See the file
26 AUTHORS in the distribution for the complete list.
28 ----------------------------------------------------------------
30 Bugs fixed in 1.1.16:
32    3107  listview columns do not sort in Acemoney
33    7385  Microsoft Golf 3.0 crashes on startup
34   10213  Pegasus Mail: program closes when sub-program closes
35   10631  3DMark01 - Test4 Nature is extremely slow
36   11164  midtown madness 2 menus are not displayed correctly
37   11861  regedit does not correctly display unicode value data
38   11864  iTunes - Show in Windows Explorer link broken
39   12119  Dialog with enu does not display the menu
40   12345  Live For Speed S2: could not detect suitable screen modes
41   12701  watchtower library - listview works slow and wrong
42   13389  Victoria, an  Empire under the sun. Crashes on startup
43   13676  Lemmings Revolution: does not start anymore, still did in 0.9.43.
44   14308  Dungeon Keeper 2 cursor fails to render correctly with hardware rendering enabled
45   14310  Dungeon Keeper 2 cannot be navigated with the arrow keys
46   14433  GuildWars 3D rendering broken
47   14469  America does not run
48   14780  FoxPro for Windows 2.5 setup.exe crashes with page fault
49   14964  Missing symbols in Microsoft Word (symbol.ttf is required)
50   14982  Supreme Commander: Lighting changes on zoom level
51   15063  Silent hill 4 demo crashes very early
52   15528  Miranda has severe problems showing history in conversation windows
53   15545  Photomatix Pro works in 32-bit but crashes in 64-bit Ubuntu
54   15559  winealsa sound regression: scratchiness/stutter in multiple games
55   15641  Tile Studio 2.55: Toolbar icons get resized when switching to Map mode
56   15907  Dragon NaturallySpeaking 10 crashes after SelectStyleFont
57   16199  Miranda IM options page crash
58   16556  Dragon NaturallySpeaking 10 New User Box displays training text incorrectly
59   16818  Switched Y/Z on german keybord settings
60   16908  memory leak in function SetWindowRgn (?)
61   16917  file dialog to select attchments slows down for many files
62   16990  Call of Duty 2 demo install fails
63   17050  eMule: Ends up eating all the memory (swap included)
64   17117  Chicken Tournament: needs ComputeSphereVisibility
65   17288  Keyboard stops working in Halo Demo
66   17369  VMware Intrastructure Client 2.5 cannot validate disk capacity while creating new VM
67   17373  eac3to: large files don't work - NtMapViewOfSection?
68   17409  crypt32/chain tests fail with +heap enabled
69   17411  crypt32/encode tests fail with +heap enabled
70   17413  riched32/editor tests fail with +heap enabled
71   17414  user32/dde test crashes if +heap enabled
72   17415  several tests (jscript:run, msi:msi, netapi32:access) crash if +heap enabled
73   17417  winetest causes msvcrt:file test to fail
74   17429  winhlp32 crash when run with no options
75   17490  win16 app fails with unimplemented function krnl386.exe.GetShortPathName
76   17500  libs/wine: Japanese character wrongly reported as invalid
77   17502  Portal: Prelude 1.1.5 installer has improper placement of directory selection text
78   17507  Scrollbars are inappropriately displayed in Ascentive Library Files installer
80 ----------------------------------------------------------------
82 Changes since 1.1.15:
84 Adam Stoelting (2):
85       msadp32.acm: Changed pointer cast from DWORD to DWORD_PTR.
86       winemp3.acm: Changed pointer cast from DWORD to DWORD_PTR.
88 Alexandre Julliard (76):
89       ntdll: Avoid null dereference in the NtCreateSymbolicLinkObject trace.
90       ntdll: Improve debugging helper for object attributes structure.
91       ntdll: Don't fail in NtMapViewOfSection for 4Gb+ files if an explicit size is specified.
92       user32/tests: Another fix for lack of color cursor support.
93       user32/tests: Add a couple of optional message, mark as todo a test that now fails consistently on Wine.
94       user32/tests: Skip some tests if SetForegroundWindow doesn't behave correctly.
95       user32/tests: Fix some checks of the key value in accelerators.
96       secur32: Properly initialize the helper structure when fork support is missing.
97       kernel32/tests: Fix the last remaining failure on NT4.
98       kernel32/tests: Add a few more error codes for GetDiskFreeSpace.
99       winmm/tests: Assume volume is not supported if waveGetOutVolume fails.
100       configure: Try to avoid warnings in checks to support configuring with -Werror.
101       configure: Don't set target flags if build and host are the same.
102       wrc: Print better error messages for functions that set errno.
103       user32: Make sure to not corrupt last error in the message spy.
104       makefiles: Do not install progman, uninstaller and winebrowser in the bin directory.
105       ntdll/tests: Don't pass uninitialized object attributes to symlink functions.
106       shell32: Default to the more modern location for the user profile directory.
107       user32/tests: Test for failure to change system parameters even if getting them succeeded.
108       user32/tests: Skip message tests if queuing keyboard events doesn't work.
109       ole32/tests: Don't hang forever in the child process.
110       ntdll: Determine the Unix tid for the server directly in ntdll.
111       ntdll: Move the CPU-specific handling of current TEB to the respective signal files.
112       msvcrt: Don't try to duplicate invalid handles. Don't reset std handles if we didn't set them.
113       user32/tests: Ignore SPI_ICONVERTICALSPACING notifications. Don't reset mouse buttons if setting failed.
114       msctf/tests: Don't import uuid.
115       winetest: Try to trigger the Gecko install for mshtml tests, and skip them otherwise.
116       include: Avoid redefinition of WIN32 in twain.h.
117       user32/tests: Try harder to make the window receive keystrokes.
118       tests: When tracing is enabled, output the todo tests too.
119       winetest: Get rid of the archive URL, it's no longer used.
120       ntdll: Call pthread_sigmask directly instead of through the pthread function table.
121       ntdll: Moved exit_thread and abort_thread functions to thread.c.
122       ntdll: Call pthread_create and pthread_exit directly from ntdll.
123       fonts: Re-generate fonts using the "official" fontforge version.
124       fonts: Set the symbol flag when generating symbol.ttf.
125       user32/tests: Skip some input tests if we fail to queue keyboard events.
126       user32/tests: Skip some message tests if we fail to queue events.
127       user32/tests: Remove an unreliable pixel test.
128       user32/tests: Add some optional keystrokes for AltGr key.
129       user32/tests: Print all the unexpected messages we received. Fix a couple of sequences.
130       winetest: Process messages while waiting for a process to terminate.
131       winetest: Don't try to unload mshtml, it's broken.
132       ntdll: Don't free the thread stack and TEB while exiting, do it from the next thread.
133       ntdll: Allocate the stack for all threads, don't rely on pthread to do it for us.
134       libwine: Get the reverse mapping of the Unicode default char to check for invalid chars.
135       programs: Only create executable wrappers for programs that get installed in the bin directory.
136       winegcc: Allow creating an executable with an arbitrary extension.
137       configure: Disable VxD and DOS modules when 16-bit support is disabled.
138       kernel32: Print a nicer error message when 16-bit/DOS apps cannot be launched.
139       user32/tests: Skip more input tests if we can't queue keyboard input.
140       user32/tests: Add a couple of optional messages.
141       winhlp32: Fix a crash when started without arguments.
142       credui: Fix old-style dependency line in the makefile.
143       user32: Move a few 16-bit user functions to user16.c where they belong.
144       libwine: Try to load all modules in the programs directory, not just those with .exe extension.
145       user32/tests: Fix a few more input test failures on Windows.
146       user32/tests: Add some more optional messages.
147       msi: Fix handling of buffer sizes in MsiEnumPatchesA and avoid a redundant call to MsiEnumPatchesW.
148       msi/tests: Add some tests for MsiEnumPatchesW, fix a few failures on XP.
149       ntdll: Default to WinXP version if there's nothing in the registry.
150       programs: Get rid of the remaining binary wrappers, they break out-of-tree builds.
151       user32/tests: Fix some input tests on Win9x and NT4.
152       makefiles: Avoid nested variable expansion that doesn't work on BSD make.
153       winebuild: Make the 16-bit DOS header a local symbol.
154       winebuild: Allow the module entry point to be NULL.
155       winebuild: Add support for generating stand-alone 16-bit modules.
156       winecrt0: Add entry point code for stand-alone 16-bit executables.
157       kernel32: Add support for loading stand-alone 16-bit modules.
158       kernel32: Make sure the process has an entry point before starting it.
159       kernel32: Make winoldap.mod into a stand-alone 16-bit executable.
160       kernel32: Make winhelp.exe into a stand-alone 16-bit executable.
161       configure: Disable 16-bit code by default for Mingw builds.
162       user32/tests: Fix some message sequences for Win9x.
163       winecfg: Offer a few more dlls in the load order drop-down list.
164       winebuild: Don't prefix local symbols with an underscore.
166 Alistair Leslie-Hughes (34):
167       urlmon: Correctly test to see if PutProperty_CLASSIDPROP is called.
168       urlmon: Fix PutProperty_CLASSIDPROP check under win98 to w2k.
169       mshtml: Add VT_I4 support to set_nsstyle_attr_var.
170       mshtml: Implement IHTMLStyle get/put minHeight.
171       mshtml: Implement IHTMLStyle_get_marginRight.
172       mshtml: Implement IHTMLStyle_get_marginLeft.
173       mshtml: Implement IHTMLCurrentStyle_get_position.
174       mshtml: Implement IHTMLCurrentStyle_get_fontFamily.
175       mshtml: Implement IHTMLCurrentStyle_get_fontStyle.
176       mshtml: Implement IHTMLCurrentStyle_get_backgroundImage.
177       mshtml: Implement IHTMLCurrentStyle_get_fontVariant.
178       mshtml: Implement IHTMLCurrentStyle_get_borderTopStyle.
179       mshtml: Implement IHTMLCurrentStyle_get_borderRightStyle.
180       mshtml: Implement IHTMLCurrentStyle_get_borderBottomStyle.
181       mshtml: Implement IHTMLCurrentStyle_get_borderLeftStyle.
182       mshtml: Implement IHTMLCurrentStyle_get_textAlign.
183       mshtml: Implement IHTMLCurrentStyle_get_textDecoration.
184       mshtml: Implement IHTMLCurrentStyle_get_cursor.
185       mshtml: Implement IHTMLCurrentStyle_get_fontWeight.
186       mshtml: Implement IHTMLCurrentStyle_get_fontSize.
187       mshtml: Implement IHTMLCurrentStyle_get_left.
188       mshtml: Implement IHTMLCurrentStyle_get_top.
189       mshtml: Implement IHTMLCurrentStyle_get_width.
190       mshtml: Implement IHTMLCurrentStyle_get_height.
191       mshtml: Implement IHTMLCurrentStyle_get_paddingLeft.
192       mshtml: Implement IHTMLCurrentStyle_get_zIndex.
193       mshtml: Implement IHTMLCurrentStyle_get_verticalAlign.
194       mshtml: Implement IHTMLCurrentStyle_get_marginRight.
195       mshtml: Implement IHTMLCurrentStyle_get_marginLeft.
196       mshtml: Implement IHTMLStyle get/put backgroundRepeat.
197       mshtml: Implement IHTMLCurrentStyle_get_backgroundRepeat.
198       mshtml: Add idl for IPersistHistory interface.
199       uuid: Add IID_PersistHistory GUID.
200       mshtml: Show IPersistHistory interface is supported.
202 Anders Jonsson (4):
203       browseui: Add Swedish translation.
204       taskmgr: Add Swedish translation.
205       oleview: Add Swedish translation.
206       winemine: Change max number of mines to (cols-1)*(rows-1).
208 Andrew Nguyen (5):
209       include: Fix mismatched extern declaration in aclui.h.
210       tapi32: Stub lineGetProviderListW.
211       tapi32: Stub lineAddProviderW.
212       hid: Stub HidD_GetFeature.
213       hid: Stub HidD_SetFeature.
215 Andrew Talbot (2):
216       rsaenh: Replace malloc/realloc with HeapAlloc/HeapReAlloc.
217       twain_32: Replace realloc() and strdup().
219 Aric Stewart (21):
220       gdiplus: In GdipDrawString do not NULL terminate the buffer. It is unneeded and overruns the buffer.
221       wininet: use debugstr_a in NETCON_getNextLine TRACE to avoid overflow on long lines.
222       msctf: Add Enable key and User key for language profile.
223       msctf: Implement ITfInputProcessorProfiles::EnableLanguageProfile.
224       msctf: Implement ITfInputProcessorProfiles::EnableLanguageProfileByDefault.
225       msctf: Implement ITfInputProcessorProfiles::IsEnabledLanguageProfile.
226       wininet: Parse cookie information from cookie value.
227       wininet: When cracking a cookie url discard the webpage and ensure at least a path of '/'.
228       wininet: Add and match paths for cookies.
229       wininet: Complicated cookie value set/get tests.
230       wininet: Make use of improved cookie functions and cookie paths.
231       msctf: Added msctf tests.
232       wininet: Handle cookie expiration.
233       msctf: Implement ITfInputProcessorProfiles::Unregister.
234       msctf: Define TIP Category values.
235       msctf: Add tests for ITfCategoryMgr::UnregisterCategory and ITfCategoryMgr::RegisterCategory.
236       msctf: Define TF_LANGUAGEPROFILE.
237       msctf: Implement ITfInputProcessorProfiles::EnumInputProcessorInfo.
238       msctf: Implement ITfInputProcessorProfiles::EnumLanguageProfiles.
239       msctf: Implement ITfCategoryMgr::FindClosestCategory.
240       msctf: Use ITfCategoryMgr::FindClosestCategory to set catid when enuming language profiles.
242 Artem Reznikov (1):
243       shlwapi: Ukranian translation.
245 Aurimas Fischer (13):
246       comdlg32: Add Lithuanian translation.
247       wineps.drv: Add Lithuanian translation.
248       winecfg: Add Lithuanian translation.
249       shell32: Add Lithuanian translation.
250       comdlg32: Unify/fix some Lithuanian translated strings.
251       winecfg: Unify/fix some Lithuanian translated strings.
252       winspool.drv: Add Lithuanian translation.
253       winspool.drv: Properly free destinations list returned by CUPS.
254       comdlg32: Fix another inconsistency in Lithuanian translation.
255       winspool.drv: Fix another inconsistency in Lithuanian translation.
256       notepad: Fix more inconsistencies in Lithuanian translation.
257       user32: Add Lithuanian translation.
258       mshtml: Add Lithuanian translation.
260 Austin English (3):
261       kernel32: Add test for renaming file over itself.
262       user32: Add a missing HeapFree.
263       dbghelp: Change pointer cast to DWORD_PTR.
265 Chris Robinson (2):
266       mcicda: Play back an audio CD digitally, when possible.
267       mcicda: Partially handle Play notifications.
269 Christian Costa (1):
270       mciqtz32: Add stubbed mciqtz32.dll (part of DirectShow).
272 David Adam (7):
273       d3drm: Remove unneeded includes.
274       d3drm: Implement the spherical interpolation part of D3DRMQuaternionSlerp.
275       d3drm: Allow output pointer to be equal to input pointer.
276       d3drm: Simplify some functions.
277       d3dx8: Implement the spherical interpolation part for D3DXQuaternionSlerp.
278       d3drm: D3DRMQuaternionSlerp should be tested against returned Windows values.
279       ddraw: Implement ComputeSphereVisibility.
281 David Korth (1):
282       winex11.drv: Map Super_L, Super_R, and Menu keys correctly.
284 Detlef Riekenberg (8):
285       spoolss: Properly initialize the backends.
286       spoolss: Implement EnumPorts.
287       fusion/tests: Do not use an hardcoded path for the windows directory.
288       fusion/tests: Fix remaining win98 failures in asmcache.
289       mshtml/tests: Fix typos from copy&paste.
290       mshtml/tests: Fix text in ok().
291       shdocvw/tests: Dump the guid for additional interfaces.
292       spoolss: Implement GetPrinterDriverDirectoryW.
294 Dmitry Timoshkov (2):
295       mlang: Implement IMLangFontLink_GetStrCodePages.
296       gdi32: Revert an unrelated part of 028617b90ba586bdb30723c700eea888c159ada7.
298 Dylan Smith (12):
299       richedit: Removed unused ME_Document structure.
300       hhctrl.ocx: Handle quoted filenames in doWinMain.
301       richedit: Added missing initialization of nAvailWidth for ME_TextEditor.
302       richedit: Don't show vertical scrollbar for single line controls.
303       richedit: Fixed scrollbar visiblility calculation after SetScrollInfo.
304       richedit: Return FALSE for EM_LINESCROLL with single line control.
305       richedit: EM_SHOWSCROLLBAR hides scrollbars for less than page of text.
306       richedit: Never wrap for single line controls.
307       wordpad: Show error when user tries to add more than max tab stops.
308       wordpad: Sort tab stops by numeric value rather than as string.
309       richedit: EM_SETOPTIONS modify format rect when selbar setting change.
310       richedit: Avoid crashing if TxSendMessage is called with NULL plresult.
312 Eddie Leung (1):
313       msg711.acm: Pointer cast changed to DWORD_PTR.
315 Francois Gouget (42):
316       crypt32: Merge two traces.
317       wintrust: Make WINTRUST_ReAlloc() static.
318       winetest: Annotate xmalloc() and xrealloc() with allocation size attribute.
319       wined3d: Make debug{fixup_channel_source,yuv_fixup}() static.
320       kernel32: Fix an off-by-one error in build_envp().
321       mapi32/tests: Use win_skip() to skip over unimplemented functionality.
322       user32/tests: Use win_skip() to skip over unimplemented functionality.
323       setupapi/tests: Use win_skip() to skip over unimplemented functionality.
324       serialui/tests: Use win_skip() to skip over unimplemented functionality.
325       secur32/tests: Use win_skip() to skip over unimplemented functionality.
326       rpcrt4/tests: Use win_skip() to skip over unimplemented functionality.
327       oleaut32/tests: Use win_skip() to skip over unimplemented functionality.
328       ntdll/tests: Use win_skip() to skip over unimplemented functionality.
329       netapi32/tests: Use win_skip() to skip over unimplemented functionality.
330       make_makefiles: Add 'use strict'.
331       schannel/tests: Use win_skip() to skip over unimplemented functionality.
332       kernel32/tests: Use win_skip() to skip over unimplemented functionality.
333       kernel32/tests: Change to a win_skip() because we don't want to skip the GetConsoleCursorInfo(,NULL) test in Wine.
334       imm32/tests: Use win_skip() to skip over unimplemented functionality.
335       gdi32/tests: Use win_skip() to skip over unimplemented functionality.
336       fusion/tests: Use win_skip() to skip over unimplemented functionality.
337       ddraw/tests: Use win_skip() to skip over unimplemented functionality.
338       opengl32/tests: Use win_skip() to skip over unimplemented functionality.
339       opengl32/tests: Replace a couple of trace()s with skip()s.
340       crypt32/tests: Use win_skip() to skip over unimplemented functionality.
341       winemaker: Fix invalid usage of {open,close}dir() in fix_file_and_directory_names(). .
342       winemaker: Fix handling of the global settings specified on the command line.
343       d3d8/tests: Use win_skip() to skip over unimplemented functionality.
344       d3d9/tests: Use win_skip() to skip over unimplemented functionality.
345       dplayx/tests: Use win_skip() to skip over unimplemented functionality.
346       shell32/tests: Use win_skip() to skip over unimplemented functionality.
347       shlwapi/tests: Use win_skip() to skip over unimplemented functionality.
348       snmpapi/tests: Use win_skip() to skip over unimplemented functionality.
349       wininet/tests: Use win_skip() to skip over unimplemented functionality.
350       winspool.drv/tests: Use win_skip() to skip over unimplemented functionality.
351       wintrust/tests: Use win_skip() to skip over unimplemented functionality.
352       comdlg32/tests: Use win_skip() to skip over unimplemented functionality.
353       shell32: Remove WINAPI on static functions where not needed.
354       advapi32/tests: Use win_skip() to skip over unimplemented functionality.
355       advpack/tests: Use win_skip() to skip over unimplemented functionality.
356       comctl32/tests: Use win_skip() to skip over unimplemented functionality.
357       twain_32/tests: Use win_skip() to skip over unimplemented functionality.
359 Gerald Pfeifer (2):
360       comctl32: Simplify fifteen tooltips function invocations.
361       comctl32: Simplify eight TOOLBAR_ function invocations.
363 Hans Leidekker (11):
364       fusion: Assembly version must be taken from the metadata, not the file version.
365       fusion: Uninstall assembly used to check for presence of .NET runtime.
366       fusion: Convert to Unicode.
367       fusion: Assembly version numbers are WORDs.
368       fusion: Allow spaces between attribute-value pairs in an assembly name.
369       fusion: Don't trace contents of an out parameter.
370       msi: Make comparison of assembly field names case insensistive.
371       fusion: Use parsed properties for assembly enumeration instead of trying to parse the display name again.
372       msi: Don't release view object twice in check_assembly_installed.
373       fusion: Sort the list of assemblies built during enumeration.
374       msi: Add reinstall tests.
376 Henri Verbeet (35):
377       wined3d: Allow floating point values for WINED3DDECLUSAGE_BLENDWEIGHT.
378       wined3d: Add some traces to state handlers.
379       d3d9: Also copy the AutoDepthStencilFormat field in GetPresentParameters().
380       quartz: Use a more appropriate size for the video renderer window.
381       d3d8: Explicitly convert between D3DFORMAT and WINED3DFORMAT values.
382       d3d9: Explicitly convert between D3DFORMAT and WINED3DFORMAT values.
383       wined3d: Add DXGI formats to WINED3DFORMAT.
384       dxgi: Convert DXGI_FORMAT values to WINED3DFORMAT values.
385       d3d10core: Convert between DXGI_FORMAT and WINED3DFORMAT values.
386       d3dx8: Don't use uninitialized memory in the D3DXQuaternionSlerp() test.
387       d3d10core: Keep a reference to the wined3d device in the d3d10 device.
388       wined3d: Add IWineD3DBuffer, use it in d3d10core.
389       wined3d: Merge vertexbuffer.c with buffer.c.
390       wined3d: Merge indexbuffer.c with buffer.c.
391       wined3d: Add IWineD3DRendertargetView.
392       d3d10core: Add a wined3d rendertarget view to the d3d10 rendertarget view.
393       dxgi: Create a wined3d swapchain.
394       dxgi: Implement IDXGISwapChain::GetBuffer().
395       dxgi: Initial IDXGISwapChain::Present() implementation.
396       wined3d: Implement IWineD3DDeviceImpl_ClearRendertargetView().
397       wined3d: Accept WINED3DFMT_R8G8B8A8_UNORM in getColorBits().
398       d3d10core: Don't pass 1 for multisample type to wined3d.
399       d3d10core: Adjust a couple of FIXMEs.
400       d3d10: Add the ID3D10EffectType interface.
401       d3d10: Add the ID3D10EffectVariable interface.
402       d3d10: Add the ID3D10EffectConstantBuffer interface.
403       d3d10: Add the ID3D10EffectTechnique interface.
404       d3d10: Add the ID3D10Effect interface.
405       d3d10: Add the ID3D10EffectPool interface.
406       d3d10: Add a stub ID3D10Effect implementation.
407       d3d10: Add the ID3D10EffectPass interface.
408       d3d10: Add the D3D10_SHADER flags.
409       d3d10: Add the _D3D10_SHADER_MACRO struct.
410       d3d10: Add some code for parsing DXBC data.
411       d3d10: Add an initial effect parser.
413 Huw Davies (26):
414       gdi32: Improve calculation of the character code text metrics.
415       gdi32/tests: Only test the lowest byte of GdiRealizationInfo flags so that the test passes on Vista.
416       gdi32/tests: GetTextFaceA called with a NULL buffer returns 0 on win98 and winMe.
417       gdi32/tests: Win98 and WinMe actually do set error codes.
418       gdi32/tests: Win9x doesn't ensure the facename is nul terminated. Compare the logfont one element at a time.
419       gdi32: In a Baltic locale the last char of a symbol font is reported as 0xf8fd rather than 0xf0ff.
420       gdi32/tests: Allow the first char code to point to glyph 0 (the .notdef glyph).
421       inetcomm/tests: Object is a static singleton on win95.
422       inetcomm/tests: AddRef on the stream doesn't return the ref count on win95.
423       gdi32/tests: Win9x truncates the LONG elements of LOGFONT to 16 bit values.
424       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.
425       gdi32/tests: From Vista onwards TabbedTextOut ignores justification, so remove that bit of the test.
426       comdlg32/tests: Skip remaining tests if StartDoc fails.
427       comdlg32/tests: Vista can return a failure from StartDoc when using the XPS driver - don't fail the test in this case.
428       gdi32/tests: Output the required font height if the test fails.
429       gdi32/tests: Output the requested font name on failure.
430       gdi32: Set the font family as FF_MODERN if the panose marks it as monospaced.
431       gdi32/tests: Add tests for the 120 dpi bitmap fonts.
432       gdi32: Fix fractional scaling threshold.
433       lz32/tests: Display filename on failure.
434       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.
435       lz32/tests: For win9x, cBytes depends on the length of the filename.
436       ole32/tests: win9x and winnt don't include the trailing '\0'.
437       gdi32/tests: Add a broken() to an always true test.
438       gdi32/tests: Don't expect the screen dc's bitmap to be mono 1x1.
439       gdi32/tests: Winnt doesn't set last error when a NULL dc is passed to GetDIBits.
441 Hwang YunSong(황윤성) (1):
442       cryptui: Updated Korean resource.
444 Igor Tarasov (5):
445       comctl32: Make LISTVIEW_ProcessLetterKeys accept Unicode characters.
446       comctl32: Implement LVN_ODFINDITEM.
447       comctl32: Do not send LVN_DELETEITEM on LVM_DELETEALLITEMS for virtual listviews.
448       comctl32: Make listview forward HDN_ITEMCLICK.
449       comctl32: Make REBAR_StyleChanged respect wParam.
451 Jacek Caban (6):
452       shdocvw: Added loading tests.
453       shdocvw: Added QueryStatus implementation.
454       jscript: Fixed handling block_cnt in jsheap_alloc.
455       jscript: Reset mark in jsheap_clear.
456       jscript: Mark free memory if heap warnings are turned on.
457       urlmon: Make HttpProtocol implementation vtbl offset independent.
459 James Hawkins (13):
460       fusion: Implement the IAssemblyEnum interface.
461       fusion: Add initial implementation of IAssemblyCache::QueryAssemblyInfo.
462       fusion: Add tests for the IAssemblyEnum interface.
463       msi: Make sure a constant string's quotes match up.
464       msi: Add tests for field zero of a record.
465       msi: Set field zero to the name of the table containing the primary keys.
466       msi: Make sure the view being updated is the same view the record was fetched from.
467       msi: The _Tables and _Columns tables have no persistence attribute.
468       msi: A non-temporary table cannot have a temporary primary key.
469       msi: Don't create a temporary table that is not held.
470       msi: Fix a failing test on win9x.
471       msi: Trace the username to help debug test failures on certain machines.
472       msi: Fix a failing test on win9x.
474 Jeremy White (8):
475       sane.ds: Get resolution from sane, instead of hard coding -1.
476       sane.ds: Implement stub support for ICAP_PIXELFLAVOR.
477       sane.ds: Implement NATIVEXFER/MSG_GET for RGB scans.
478       sane.ds: Implement support for ICAP_XRESOLUTION and ICAP_YRESOLUTION.
479       sane.ds: Add support for ICAP_BITDEPTH.
480       sane.ds: Added support for ICAP_UNITS.
481       sane.ds: Fully support ICAP_PIXELTYPE.
482       sane.ds: Revise to match identity structures with partial information.
484 Jon Parshall (1):
485       fonts: Add the Symbol font.
487 Juan Lang (14):
488       crypt32: Fix a typo.
489       snmpapi: Relax tests to fix some failures.
490       wintrust: Fix a few failing tests.
491       advapi32: Fix failing tests on a number of systems.
492       odbccp32: Fix a couple failing tests, and log more information about remaining failures.
493       oleaut32: Remove an errant semicolon.
494       oleaut32: Constify input parameter to VarR8FromDec.
495       oleaut32: Implement VarDecFix.
496       oleaut32: Implement VarDecInt.
497       crypt32: Fix some test failures on Win9x.
498       crypt32: Properly NULL-terminate decoded UTF8 strings.
499       crypt32: Avoid reading freed memory when encountering a cyclic chain.
500       crypt32: Fix more test failures on Win9x.
501       crypt32: Fix more test failures on Win9x.
503 Juan M. Navarro (1):
504       msvcrt/tests: Avoid size_t in printf format.
506 Ken Thomases (3):
507       winecoreaudio: Fix a copy-paste accident ("In" vs. "Out").
508       dsound: Replace a realloc-or-alloc with a free-then-alloc.
509       dsound: Consolidate some duplicate code.
511 Michael Karcher (1):
512       kernel32: Free profile before reloading.
514 Michael Stefaniuc (18):
515       advapi32: Remove superfluous pointer casts.
516       vwin32.vxd: Remove unused macros.
517       vwin32.vxd: Remove superfluous pointer casts.
518       rpcrt4: Remove superfluous pointer casts.
519       mshtml: Remove superfluous pointer casts.
520       gdi32: SetAbortProc is not a 16bit function but a 32bit one.
521       wintrust/tests: Fix typos in ok() strings.
522       msacm32.drv: dwInstance, dwParam1, dwParam2 and dwUser are DWORD_PTRs.
523       msacm32: Split out the 16bit parts of the private header.
524       msacm32: Fix some Win64 problems.
525       shell32: Remove superfluous pointer casts from macros.
526       shell32: Remove superfluous pointer casts.
527       qcap: Remove superfluous pointer casts.
528       imaadp32.acm: Don't truncate a pointer by casting it to a DWORD.
529       winmm: Remove commented out code.
530       winmm: Remove superfluous pointer casts.
531       winemp3.acm: Remove the commented out III_dequantize_sample_ms function.
532       winemp3.acm: Remove superfluous pointer casts.
534 Nicolas Le Cam (1):
535       fusion/tests: Fix a test on some platforms.
537 Nikolay Sivov (6):
538       gdiplus: Implemented GdipIsVisiblePathPoint with tests.
539       gdiplus/tests: Some tests for Image raw format value.
540       gdiplus/tests: Use expectf macro for floating point tests.
541       gdiplus: Fix a docheader typo, add some missed headers.
542       cmd: Always add a new line in 'type' output on single file mode.
543       cmd: Reserve a place in buffer for NULL terminator.
545 Paul Bryan Roberts (2):
546       makedep: Let umask decide mode for makefiles.
547       advapi32: Add stub for GetSecurityInfoExA.
549 Paul Vriens (23):
550       ddraw/tests: Don't crash on W2K.
551       ddraw/tests: Use skip() instead of trace().
552       fusion/tests: Don't crash on .NET 1.x.
553       fusion/tests: Don't use strdup to prevent crashes when freeing memory.
554       fusion/tests: Don't crash if we have a culture attribute.
555       gdi32/tests: Report a missing function only once.
556       itss/tests: Fix test failures on some Win95 and NT4 boxes.
557       crypt32/tests: Don't crash on Win9x.
558       fusion/tests: Fix a test failure on Win64.
559       crypt32/tests: Don't crash on Win9x (test_msg_get_and_verify_signer).
560       crypt32/tests: Prevent some crashes on Win9x (test_decode_msg).
561       crypt32/tests: Prevent a crash on Win9x (test_data_msg).
562       crypt32/tests: Prevent some crashes on Win9x (test_msg_control).
563       winetest: Don't use W-functions in winetest to avoid issues on Win9x.
564       winetest: Extend PATH if we have dlls that only come with .NET.
565       d3d8/tests: Fix a test failure on VMware.
566       d3d8/tests: Fix a test failure on some boxes.
567       shlwapi/tests: Fix a few test failures on Win95 and some W2K.
568       fusion/tests: Directories with no dll or exe are not enumerated.
569       ddrawex/tests: Fix some test failures on W95.
570       shlwapi/tests: Fix remaining test failures on several platforms.
571       fusion/tests: Fix a few test failures on .NET 1.x.
572       fusion/tests: Fix some test failures on .NET 1.x.
574 Rein Klazes (7):
575       ole32: In PropVariantCopy() fix calculation size of array that contain pointers, not characters.
576       comctl32: Fix for owner draw statusbar.
577       user32: Do not handle WM_ENDSESSION in DefWindowProc() with test.
578       user32/resources: Remove the "switch to... <Ctrl+Esc>" item from the system menu.
579       user32: Implement support for HBMENU_POPUP_* magic menu bitmaps and use them to decorate the system menu.
580       user32: Refine the size calculations for menu items with HBMMENU_POPUP magic bitmaps with some conformance tests.
581       user32: In SetMenuInfo() implement the MIM_APPLYTOSUBMENUS. Also set last error if called with invalid parameters with tests.
583 Ricardo Filipe (6):
584       setupapi: Add missing header values for SetupPromptForDisk.
585       setupapi: Make hinstance global for all dialogs.
586       setupapi: Implement SetupPromptForDiskW with only Cancel button active.
587       setupapi: Initiate resources of SetupPromptForDisk dialog.
588       setupapi: Enable Browse action on SetupPromptForDisk dialog.
589       setupapi: Implement Ok button action in SetupPromptForDiskW dialog.
591 Rob Shearman (22):
592       widl: Fix marshalling/unmarshalling of enum arguments.
593       widl: Call Struct and Union phase functions for reference pointers to structures and unions.
594       widl: Only duplicate a type if absolutely necessary.
595       widl: Call Pointer function for freeing non-conformant strings and for all phases for returned non-conformant strings, as is done for conformant strings.
596       include: Add WDT_INPROC64_CALL cases to unions in wtypes.idl.
597       ole32: Round the extected size in the marshal and moniker tests using the results of sizing a global, not a heap pointer.
598       widl: Fix typos in write_remoting_arg which caused ref pointers to unions to not result in direct calls to NonEncapsulatedUnion/EncapsulatedUnion functions.
599       winejoystick.drv: Use CP_UNIXCP instead of CP_ACP when converting a string that comes from the OS.
600       wineoss.drv: Use CP_UNIXCP instead of CP_ACP for converting strings that come from system library functions or system headers.
601       gdi32: Move 16-bit functions not exported in gdi32.dll into files compiled only when 16-bit functionality is enabled.
602       widl: Don't directly access the type structure when determining the types in expressions.
603       widl: Use type_get_type to determine the types during statement enumeration.
604       widl: Use type_get_type to determine the types of types during header writing.
605       widl: Use type_get_type to determine the types of types during parsing and checking.
606       widl: Use type_get_type to determine the types of types during typelib generation.
607       widl: Use type_get_type to determine the types of types during C client, server and proxy code generation.
608       widl: Add typegen_detect_type and use it.
609       imm32: Fix crash in DllMain when FreeLibrary is called from a thread which existed before the DLL was loaded.
610       imm32: Lazily allocated thread-local data.
611       rpcrt4: Fix use of uninitialised variable in NdrDllRegisterProxy.
612       widl: Ignore pointer attributes applied to interface pointers.
613       widl: Only classify top-level pointers as ref pointers if they don't have any other pointer attributes.
615 Stefan Dösinger (8):
616       wined3d: Duplicate GL textures for srgb switching.
617       wined3d: Add a debug function for surface locations.
618       wined3d: Pass the requested srgb flag to PreLoad.
619       wined3d: Properly update last_was_pshader.
620       d3d9: Add an alpha blending test.
621       wined3d: Put the color_correction calls into the instruction handlers.
622       wined3d: Make shader_glsl_get_sample_function aware of *Lod functions.
623       wined3d: Create a common sampling function in GLSL.
625 Stefano Guidoni (1):
626       msacm32: Typo in Italian resource file.
628 Thomas Kho (1):
629       iphlpapi: Fix Solaris build error due to ERR redefinition.
631 Vincent Povirk (14):
632       gdiplus: Handle negative stride in GdipCreateBitmapFromScan0.
633       gdiplus: Fix GdipCreateBitmapFromHBITMAP flipping images vertically.
634       include: Add IShellItem to headers.
635       shell32: Add stub implementation of IShellItem.
636       shell32: Partially implement SHCreateShellItem.
637       include: Add IPersistIDList to headers.
638       shell32: Add IPersistIDList interface to ShellItem objects.
639       shell32: Implement UnixFolder_IShellFolder2_GetDefaultColumn.
640       mapi32: Add version resource.
641       wine.inf: Create a fake mapi32.dll.
642       shell32: Implement Get/SetIDList on ShellItem objects.
643       shell32: Add a message for opening files with no association.
644       kernel32/tests: Remove a redundant check for ERROR_CALL_NOT_IMPLEMENTED.
645       kernel32/tests: Fix overlapped named pipe test.
647 Vitaliy Margolen (2):
648       dinput: Let each device decide which hook event to skip.
649       kernel32: Implement GetShortPathName16.
652 Alexandre Julliard
653 julliard@winehq.org