Release 1.5.3.
[wine] / ANNOUNCE
1 The Wine development release 1.5.3 is now available.
2
3 What's new in this release (see below for details):
4   - Support for graphics bounds tracking.
5   - A number of fixes to the builtin Internet Explorer.
6   - Support for displaying ARM code in the Wine debugger.
7   - Various DirectMusic improvements.
8   - Better namespace support in MSXML.
9   - Various bug fixes.
10
11 The source is available from the following locations:
12
13   http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.5.3.tar.bz2
14   http://prdownloads.sourceforge.net/wine/wine-1.5.3.tar.bz2
15
16 Binary packages for various distributions will be available from:
17
18   http://www.winehq.org/download
19
20 You will find documentation on http://www.winehq.org/documentation
21
22 You can also get the current source directly from the git
23 repository. Check http://www.winehq.org/git for details.
24
25 Wine is available thanks to the work of many people. See the file
26 AUTHORS in the distribution for the complete list.
27
28 ----------------------------------------------------------------
29
30 Bugs fixed in 1.5.3:
31
32    6878  GetBoundsRect not implemented
33    7977  date format differs from Windows
34    7990  C&C 3 Video does not stretch to fullscreen with ATI drivers
35   12228  No ALSA support for certain soundcards since 0.9.57
36   14400  AngelBot crashes if text is copied via right-click context menu
37   15582  Adobe Dreamweaver CS3 Installer crash if you reject the license
38   15606  Lotr Bfme2: Big parts of characters appear in a glowing white
39   19435  Some winsock calls will crash when passing NULL as protocol parameter
40   20102  Runes of magic is unable to save configuration settings
41   20566  icons of size 24x24 are black
42   20770  FineReader 8 crashes after importing images into an empty batch
43   20839  Blue particles where there should be only fog in Age of Empires III trial.
44   21269  Babylon 5 - I've F­ound Her: crashes when colliding with objects if using a joystick
45   22767  Ragnarok and deforming sound
46   23106  Shareaza shows white boxes when you select a neighbor in the network tab
47   23867  Non-English characters don't display in winecfg
48   24816  Serif WebPlus X2 fails to install
49   26176  JavaScript custom-actions not running?
50   26420  TES Construction Set crashes on topic view/edit
51   27157  Brink: No sound
52   27273  Microsoft Office Communicator 2007 R2 does not install, doesn't recognize MSXML 6.0 SP1 as installed (ACTION_FileVersionMatches needs to check version for languages)
53   28340  UFO: Extraterrestrials Gold crashes at start (can't be workarounded by using native dsound/directplay)
54   28848  PCSX2 0.9.9 svn r4942: Using GSDX plugin results in garbled graphics
55   28999  Weatherbug fails to detect vbscript
56   29099  LabView 2011 demo crashes on start (PathRemoveExtensionA/W unconditionally tries to null terminate string)
57   29165  IApplicationAssociationRegistration not implemented (needed by gecko)
58   29318  Internet Explorer 8 cannot show previews on the quick tabs screen
59   29823  Subtitle Edit is missing its menu bar with MS .NET 2.0, but not Mono
60   30085  Non display of code from a saved project on starting the app again
61   30090  Pegasus Mail v4.63 build 325 starts w/ exception (0x80004001) (0x80004001) @01AE3610 (mshtml HTMLDocument_put_URL is a stub)
62   30233  Cisco IP Communicator 8.6(1). The minimum supported processor to run Cisco IP Communicator is a P3 Pentium-level or compatible processor
63   30243  RaiderZ needs msvcr90.dll._byteswap_ulong
64   30283  Can not fetch STATIC records from Microsoft ADO data sources
65   30313  Microsoft Office Communicator 2007 R2 Trial requires ISAXXMLReader feature "namespace-prefixes"
66   30363  Some sites iexplore now hangs
67   30401  Iexplore crashes http://whatsmyuseragent.com
68   30430  Iexplore crashes http://europe.cnn.com/CNNI/
69   30440  Iexplore crashes https://login.yahoo.com/
70   30448  Star Wars Galactic Battlegrounds 1.0: crashes randomly every time I play it
71   30461  Windows Media Player does not render video
72   30468  Iexplore hangs http://www.tinymce.com/tryit/full.php
73   30478  Document.write doesn't support number content
74   30482  Lexware Buchhalter 2012 fails on startup due to GdipCreateFontFromLogfont not properly handling negative font heights
75   30491  Microsoft Office Communicator 2007 R2 Trial fails to parse rule XML from resource file (BSTR/UTF-16 passed to SAXXMLReader)
76   30505  Microsoft Office Communicator 2007 R2 Trial fails to parse rule XML from resource file (needs support for push/pop operations for namespace contexts)
77   30508  Powerpoint 2003 & 2007: embedded video has an "ActiveMovie" title bar (and shouldn't)
78   30510  Crash when using CANeds
79   30516  StudioTax 2011 installer hangs
80
81 ----------------------------------------------------------------
82
83 Changes since 1.5.2:
84
85 Akihiro Sagawa (2):
86       comctl32/tests: Add tests for long info tip texts.
87       comctl32: Truncate the info tip text when using ANSI version messages.
88
89 Alexander Morozov (1):
90       kernel32/tests: Add more tests for early closing mapping handle.
91
92 Alexandre Julliard (18):
93       po: Fix a msgid in the Danish translation.
94       gdi32: Add helper functions for manipulating bounds rectangles.
95       gdi32: Add a GetBoundsRect driver entry point.
96       gdi32: Add bounds tracking to all the DIB engine entry points.
97       winex11: Convert all points to device coordinates at once for polylines and polygons.
98       winex11: ExtFloodFill does take the current ROP into account.
99       gdi32/tests: Fix a test that can fail on multi-monitor setups.
100       winex11: Remove support for server-side fonts.
101       winex11: Add bounds rectangle tracking to all graphics entry points.
102       user32: Don't invalidate DCEs for sibling top-level windows since they are not clipped.
103       gdi32/tests: Take into account multi-monitor setups in the clip region tests.
104       gdi32: Fix some typos in the 4-bpp shrink_row function.
105       dmusic: Internal functions don't need to be WINAPI.
106       gdi32: Fix coordinates for row copies in mirrored vertical stretching.
107       iphlpapi/tests: Get rid of function typedefs and use more standard names for function pointers.
108       gdi32: Add a SetBoundsRect driver entry point.
109       gdi32: Store the bounds rectangle as a pointer in the DIB driver.
110       winex11: Store the DC bounds rectangle as a pointer.
111
112 Andrew Eikum (2):
113       dmime: Don't try to create a standard audio path if the client didn't ask for one.
114       dsound: Map MMDevAPI error to DSound error.
115
116 André Hentschel (21):
117       winedbg: Add long branch to Thumb disassembling.
118       winedbg: Solve ARM disassembling fixmes.
119       winedbg: Use better register names for ARM disassembling.
120       winedbg: Fix parsing table for ARM disassembler.
121       advapi32: Avoid shadowing a parameter.
122       crypt32: Avoid shadowing a parameter.
123       winedbg: Add shift operators to ARM disassembler.
124       comctl32: Remove unneeded shadow variables for comboex.
125       devenum: Remove unneeded shadow variables.
126       gdi32: Remove unneeded shadow variable.
127       mscms: Remove unneeded shadow variable.
128       netapi32: Remove unneeded shadow variables.
129       winhlp32: Remove unneeded shadow variables.
130       jscript: Remove unneeded shadow variable.
131       services: Remove unneeded shadow variable.
132       winedbg: Disassemble more Thumb instructions.
133       winedbg: Add "load address" and new nops to the Thumb disassembler.
134       winedbg: Print all available information about branch targets in ARM disassembler.
135       winevdm: Remove unneeded shadow variable.
136       ws2_32: Remove unneeded shadow variable.
137       dbghelp: Assorted fixes for shadow variables.
138
139 Aric Stewart (8):
140       quartz: Correct a critical section lock reversal issue found by Marcus Meissner (Coverity).
141       strmbase: Implement BaseDispatch.
142       strmbase: Have BaseControlWindow use BaseDispatch.
143       strmbase: Have BaseControlVideo use BaseDispatch.
144       strmbase: Have PassThruImpl use BaseDispatch.
145       strmbase: We cannot hold the RenderLock during QualityControlRender_WaitFor.
146       strmbase: get_VideoHeight should always have a positive height.
147       strmbase: Track internal window styles in baseWindow.WindowStyles.
148
149 Aurimas Fišeras (1):
150       po: Update Lithuanian translation.
151
152 Bruno Jesus (4):
153       ole32: Make sure StgIsStorageILockBytes tests real data.
154       iphlpapi/tests: Add SetTcpEntry tests.
155       regedit: Fix item text reading in regedit.
156       regedit: Allows semicolon comments.
157
158 Carlo Bramini (1):
159       shlwapi: Add NULL checks to StrCpyW and StrCatW.
160
161 Christian Costa (25):
162       winegstreamer: Remove useless FIXME.
163       dmband: Add tests.
164       dmband: Display flag variables in hexadecimal and rename some parameters.
165       d3drm: Pass the first requested interface when notifying the application.
166       d3drm: Implement IDirect3DRMFrameX_AddChild.
167       d3drm: Implement IDirect3DRMFrameX_DeleteChild.
168       dmusic: Fix IDirectMusic8Impl_CreateMusicBuffer buffer signature.
169       dmusic: Pass creation parameters to DMUSIC_CreateDirectMusicBufferImpl then allocate data buffer and set format accordingly.
170       dmusic: COM clean-up of IDirectMusicBuffer.
171       include: Add dmksctrl.h with definition of KSDATAFORMAT_SUBTYPE_DIRECTMUSIC needed by DirectMusic.
172       amstream: Use proper constructor name for ddraw mediastream.
173       amstream: Add IAudioMediaStream stub implementation.
174       dmusic: Implement IDirectMusicBufferImpl_GetBufferFormat.
175       dmusic: Implement IDirectMusicBufferImpl_GetMaxBytes.
176       dmusic: Implement IDirectMusicBufferImpl_GetRawBufferPtr.
177       dmusic: Display new ref in IDirectMusicBufferImpl_AddRef and IDirectMusicBufferImpl_Release.
178       dmusic: Cleanup IDirectMusicBufferImpl_QueryInterface.
179       amstream: Add stubbed implementation of DirectDrawStreamSample.
180       amstream: Add stubbed implementation of AudioStreamSample.
181       dmusic: Add tests for IDirectMusicBuffer.
182       dmusic: Handle GUID_NULL when creating IDirectMusicBuffer.
183       dmusic: Implement IDirectMusicBufferImpl_PackStructured.
184       dmusic: IDirectMusicBufferImpl_GetUsedBytes.
185       dmusic: Implement IDirectMusicBuffer_GetStartTime and IDirectMusicBuffer_SetStartTime.
186       dmusic: Implement IDirectMusicBufferImpl_Flush.
187
188 Daniel Lehman (3):
189       gdi32: Don't add_join if points are coincident in wide_line_segments.
190       msvcrt: Add declarations to stdlib.h for _strtoui64 and _strtoi64.
191       oleaut32: Treat years 0 to 29 as 2000 to 2029 in VARIANT_RollUdate.
192
193 Detlef Riekenberg (2):
194       browseui: Add IOleWindow to IProgressDialog.
195       browseui/tests: Add tests for IProgressDialog.
196
197 Dmitry Timoshkov (17):
198       kernel32: Fix some typos, remove not needed casts.
199       server: Add access mapping for IO completion objects.
200       include: Define MUTEX_ALL_ACCESS in a PSDK compatible way.
201       include: Add some missing FILE_FLAG_xxx definitions.
202       advapi32: Add distinct tests for Read, Write and Execute access rights for kernel objects.
203       advapi32: Add named pipe access tests.
204       gdiplus: Use StretchBlt instead of GdiAlphaBlend if device doesn't support alpha blending.
205       kernel32: Add more memory access checks.
206       gdiplus: Avoid saving negative values in pixel_size and emSize.
207       gdiplus: Use symbolic names of font styles.
208       gdiplus: Use Tahoma instead of Arial for gdiplus font tests.
209       include/wine/test.h: Fix tests compilation with a PSDK compiler.
210       gdiplus: Do not rely on an enumerated font size being equal to otmEMSquare.
211       gdi32: Enumerated font size should not be too large.
212       gdi32: ntmCellHeight and ntmAvgWidth should be in font units.
213       gdiplus: Use symbolic name of the font style.
214       winex11.drv: Windows always generates VK_DECIMAL for Del/. on a keypad.
215
216 Francois Gouget (24):
217       d3drm/tests: Make object_load_callback() static.
218       quartz: Mark a bunch of functions as static.
219       scrrun/tests: Make test_interfaces() static.
220       wineoss.drv: Make get_ossdevice_from_guid() static.
221       gdiplus/tests: Make test_pathgradientpresetblend() static.
222       msi: Make create_record() static.
223       po: Fix some typography issues in the Czech translation.
224       po: A couple of line wrapping tweaks in the Czech translation.
225       po: Fix a couple of typography issues in the Portuguese (Portugal) translation.
226       po: Assorted French translation spelling fixes and tweaks.
227       po: Mark an Esperanto translation with an invalid formatting directive as fuzzy.
228       po: Fix a few line feed / line wrapping issues in the Esperanto translation.
229       po: Fix some typography issues in the Esperanto translation.
230       po: Fix a couple of trailing space issues in the Korean translation.
231       po: Fix some typography issues in the Danish translation.
232       po: Fix a couple of line feed / line wrapping issues in the Ukrainian translation.
233       po: Fix some typography issues in the Ukrainian translation.
234       po: Fix some typography issues in the Turkish translation.
235       po: Mark an incomplete Ukrainian translation as fuzzy.
236       po: Mark an incorrect Spanish translation as fuzzy.
237       po: Fix some typography issues in the Chinese (PRC) translation.
238       po: Fix a Portuguese (Portugal) translation.
239       po: Update a few Yes/No/All Slovak translations.
240       comctl32/tests: Add a trailing '\n' to an ok() call.
241
242 Frédéric Delanoy (2):
243       vbscript: Fix a typo.
244       jscript: Assorted spelling fixes.
245
246 Hans Leidekker (16):
247       server: Include the Unix pid in the snapshot_next_process reply.
248       iphlpapi: Add support for TCP_TABLE_OWNER_PID_ALL in GetExtendedTcpTable.
249       iphlpapi: Add tests for GetExtendedTcpTable.
250       iphlpapi: Reimplement GetTcpTable on top of GetExtendedTcpTable.
251       msi: Fix install state detection for registry components.
252       msi/tests: Add a test for MsiEnumProductsEx.
253       msi/tests: Fix some leaks.
254       msi: Remove an unneeded assignment.
255       msi: Reduce the indentation level in ACTION_GetComponentInstallStates.
256       msi: Initialize hkey in msi_comp_find_prod_key.
257       msi: Dynamically allocate the path buffer in MsiQueryComponentStateW.
258       msi: Remove child folders first in the RemoveFolders action.
259       msi: Check supported languages in the AppSearch action.
260       msi: Don't free cached tables in MsiDatabaseCommit.
261       msi: Avoid a crash in get_registered_local_package.
262       fusion: Implement IAssemblyCache::UninstallAssembly.
263
264 Henri Verbeet (50):
265       d3d10core: COM cleanup for the ID3D10Buffer interface.
266       d3d10: COM cleanup for the ID3D10EffectVariable interface.
267       wined3d: Move the present() back buffer check to the common wined3d_swapchain_present() code.
268       wined3d: device_clear_render_targets() never fails.
269       ddraw/tests: Add a helper function to create a material.
270       d3d8: Properly retrieve an interface pointer in IDirect3DCubeTexture8Impl_GetCubeMapSurface().
271       d3d8: Properly retrieve an interface pointer in IDirect3DCubeTexture8Impl_LockRect().
272       d3d8: Properly retrieve an interface pointer in IDirect3DCubeTexture8Impl_UnlockRect().
273       d3d8: Get rid of IDirect3DTexture8Impl.
274       d3d8: Get rid of IDirect3DCubeTexture8Impl.
275       d3d8: Properly retrieve an interface pointer in d3d8_texture_2d_GetSurfaceLevel().
276       d3d8: Properly retrieve an interface pointer in d3d8_texture_2d_LockRect().
277       d3d8: Properly retrieve an interface pointer in d3d8_texture_2d_UnlockRect().
278       d3d8: Get rid of IDirect3DVolumeTexture8Impl.
279       d3d8: Merge cubetexture.c into texture.c.
280       d3d8: Properly retrieve an interface pointer in d3d8_texture_3d_GetVolumeLevel().
281       d3d8: Properly retrieve an interface pointer in d3d8_texture_3d_LockBox().
282       d3d8: Properly retrieve an interface pointer in d3d8_texture_3d_UnlockBox().
283       d3d8: Merge volumetexture.c into texture.c.
284       d3d8: Get rid of IDirect3DBaseTexture8Impl.
285       d3d8: Properly retrieve an interface pointer in IDirect3DSwapChain8Impl_GetBackBuffer().
286       d3d8: Use the surface implementation pointer in reset_enum_callback().
287       d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetBackBuffer().
288       dxgi: COM cleanup for the surface IUnknown interface.
289       ddraw/tests: Add a helper function to set the viewport background material.
290       d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetRenderTarget().
291       d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetDepthStencilSurface().
292       d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetTexture().
293       d3d9: Get rid of IDirect3DTexture9Impl.
294       d3d9: Get rid of IDirect3DCubeTexture9Impl.
295       d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetIndices().
296       d3d8: Properly retrieve an interface pointer in IDirect3DDevice8Impl_GetStreamSource().
297       d3d9: Properly retrieve an interface pointer in IDirect3DSwapChain9Impl_GetBackBuffer().
298       d3d9: Get rid of IDirect3DVolumeTexture9Impl.
299       d3d9: Merge cubetexture.c into texture.c.
300       d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetSwapChain().
301       d3d9: Use the surface implementation pointer in reset_enum_callback().
302       d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetBackBuffer().
303       d3d9: Merge volumetexture.c into texture.c.
304       d3d9: Get rid of IDirect3DBaseTexture9Impl.
305       d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetRenderTarget().
306       d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetDepthStencilSurface().
307       d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetTexture().
308       ddraw: Get rid of IClassFactoryImpl.
309       wined3d: Move the resource bind_count field up to wined3d_resource.
310       d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetVertexDeclaration().
311       d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetVertexShader().
312       d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetPixelShader().
313       d3dx9: Introduce a special case for simple loads in D3DXLoadSurfaceFromMemory().
314       d3dx9: Add basic support for loading DXT formats to D3DXLoadSurfaceFromMemory().
315
316 Huw Davies (11):
317       wineps: Add a helper to find an input slot.
318       wineps: Add a helper to find a page size.
319       wineps: Add a helper to find a duplex entry.
320       wineps: Add a cups job ticket containing pagesize and duplex information.
321       winspool: Simplify cups function loading.
322       winspool: Explicitly set CUPS options based on any job ticket lines, which otherwise get ignored by cupsPrintFile.
323       winspool: Add a helper to open a printer's registry key.
324       winspool: Simplify the code that checks for deleted printers and have it not call OpenPrinter unless it finds a printer that needs deletion.
325       winspool: Update the default settings when deleting the default printer.
326       winspool: If CUPS is found but lists no printers assume that there really are no printers - don't look in /etc/printcap.
327       winspool: Don't leak the handle returned by AddPrinter.
328
329 Hwang YunSong (1):
330       po: Update Korean translation.
331
332 Jacek Caban (36):
333       jscript: Make sure to jump out of switch before entering implicit default clausule.
334       mshtml: Added IHTMLStyle2::bottom implementation.
335       mshtml: Added support for IHTMLEventObj::cancelBubble property.
336       mshtml: Moved style_tbl lookup to separated function.
337       mshtml: Added IHTMLStyle::removeAttribute implementation.
338       mshtml: Added IHTMLStyle::removeAttribute tests.
339       axcore.idl: Guard GetTimeFormat by WINE_NO_UNICODE_MACROS ifdef and added missing AM_GBF_NODDSURFACELOCK define.
340       mshtml: Added IHTMLDocument2::put_URL implementation.
341       Added support for shadowing of element pseudo-variables.
342       mshtml: Added IHTMLWindow3::detachEvent implementation.
343       mshtml: Added IHTMLStyle2::overflowX implementation.
344       mshtml: Added IHTMLStyle2::overflowY implementation.
345       jscript: Addded parameterized property assignment support.
346       jscript: Added parameterized property assignment tests.
347       jscript: Pass correct cpbegin to InitMatch.
348       jscript: Correctly handle empty matches in String.replace.
349       mshtml: Allow more tests to be ran in non-administrator mode.
350       mshtml: Copy filter value in HTMLElement_clone.
351       winhttp: Fixed netconn_recv when read uses both SSL_recv and buffered data.
352       winhttp: Use SSL_pending in netconn_query_data_available.
353       jscript: Added regexp 'pre-parser' to support non-backslash-sequenced non-terminating '/' in characted classes.
354       mshtml: Ignore dispid 3000026 in IPropertyNotifySink::OnChanged tests.
355       mshtml: Accept different VARIANT types in document_write.
356       winhttp: Trace accept types in WinHttpOpenRequest.
357       jscript: Use compiler-generated struct for representing function code.
358       jscript: Store function name in function_code_t.
359       jscript: Store source code range in function_code_t.
360       jscript: Store variable names in function_code_t.
361       jscript: Fixed func->funcs leak.
362       jscript: Store function parameters in function_code_t.
363       jscript: Make parser a temporary compiler object.
364       jscript: Moved collecting variable declarations from parser to compiler.
365       vbscript: 'property' may be both keyword and identifier.
366       jscript: Get rid of parser function collecting hack by moving the logic to compiler.
367       jscript: Use stack_push_int in interp_bneg.
368       jscript: Removed unused do_*_tag_format arguments.
369
370 Julian Rüger (1):
371       po: Update German translation.
372
373 Józef Kucia (1):
374       d3dx9/tests: Add DDS pixel format tests for D3DXGetImageInfoFromFileInMemory.
375
376 Lauri Kenttä (2):
377       po: Update Finnish translation.
378       po: Update Swedish translation.
379
380 Marcus Meissner (2):
381       strmbase: Use correct *ppv (Coverity).
382       dmusic: Remove useless NULL check (Coverity).
383
384 Michael Stefaniuc (7):
385       d3drm: Remove leftover return statement (Smatch).
386       mmdevapi: Remove superfluous NULL pointer check before HeapFree (Smatch).
387       strmbase: Remove break after return (Smatch).
388       oleaut32/tests: Compare the correct variants.
389       gdi32/tests: Fix typo (comparison with itself).
390       ntdll/tests: Avoid casting zero.
391       riched20/tests: Don't cast NULL to an integer.
392
393 Nikolay Sivov (22):
394       msxml3: Use expected/actual sequence concept for reader tests including attributes tests.
395       msxml3: Fix end prefix iteration for SAXXMLReader40.
396       msxml3: Added IMXAttributes::clear().
397       msxml3: Added getIndexFromName() implementation for SAXAttributes.
398       msxml3: Set namespace-prefixes on by default.
399       po: Update Russian translation.
400       msxml3: Use lookup table for feature names.
401       msxml3: Respect 'namespaces' feature calling content handler callbacks.
402       msxml3: Fix handling of feature values.
403       msxml3: Make failing Locator QI a warning.
404       msxml3: Support 'namespace-prefixes' feature.
405       po: Update Russian translation.
406       msxml3: Switch parser encoding manually when it won't be able to detect it (UTF-16 case).
407       msxml3: Implement push/pop operations for contexts.
408       msxml3: getPrefix() should check all pushed contexts as well.
409       msxml3: Added getValueFromName() for IMXAttributes.
410       msxml3: Added getName() for IMXAttributes.
411       msxml3: Implement getLocalName() for IMXAttributes.
412       msxml3: Implement getURI() for IMXAttributes.
413       msxml3: Support disabled escaping mode for characters() callback.
414       msxml3: Support disabled escaping mode when writing attribute values.
415       msxml3: Query for handler interface instead of using what was passed in Variant directly.
416
417 Owen Rudge (6):
418       include: Add MAPISendMailW definition and structures.
419       mapi32: Add stub implementation of MAPISendMailW.
420       mapistub: Forward MAPISendMailW.
421       mapi32: Convert sendmail_extended_mapi to Unicode.
422       mapi32: Convert message to Unicode in MAPISendMail.
423       mapi32: Add support to MAPISendMailW for ANSI fallback.
424
425 Piotr Caban (16):
426       msvcrt: Added support for %W and %U format in strftime.
427       msvcrt: Fixed 'h' modifier handling when printing integers.
428       msvcrt: Added more length modifiers in scanf function.
429       msvcr90: Added _byteswap_{ushort,ulong,uint64} implementation.
430       jscript: Make parsing of double more accurate.
431       jscript: Added Number.toFixed implementation.
432       jscript: Added Number.toExponential implementation.
433       jscript: Added Number.toPrecision implementation.
434       wininet: Use the same hashing function as native does.
435       msvcr90: Fix byteswap_ulong implementation.
436       msvcrt: Rework wcsncpy_s to work on overlapping pointers.
437       jscript: Fix toExponential behavior when exponent is 0.
438       make_unicode: Create tables with data needed by nameprep algorithm.
439       kernel32: Added IdnToNameprepUnicode implementation.
440       kernel32/tests: Added more FoldString tests.
441       kernel32/tests: Added IdnToNameprepUnicode tests.
442
443 Rico Schüller (2):
444       d3dx9: Use param->bytes for copying the data in ID3DXBaseEffect::SetValue().
445       d3dx9/tests: Add tests for ID3DXBaseEffect::G/SetValue().
446
447 Vincent Povirk (19):
448       windowscodecs: Implement JpegEncoder_Frame_SetPixelFormat.
449       windowscodecs: Implement JpegEncoder_Frame_SetResolution.
450       windowscodecs: Implement JpegEncoder_Frame_WritePixels.
451       windowscodecs: Implement JpegEncoder_Frame_Commit.
452       windowscodecs: Implement JpegEncoder_Commit.
453       windowscodecs: Implement JpegEncoder_Frame_WriteSource.
454       windowscodecs: Implement JpegDecoder_Frame_GetResolution.
455       gdiplus: Add support for JPEG encoding.
456       mscoree: Always call mono_thread_attach before invoking managed code.
457       gdiplus: Implement accessors for graphics rendering origin.
458       gdiplus: Remove FIXME on implemented function.
459       gdiplus: Implement GdipSetPathGradientBlend, with tests.
460       gdiplus: Implement GdipSetPathGradientLinearBlend.
461       gdiplus: Implement GdipSetPathGradientSigmaBlend.
462       gdiplus: Store only one surround color if all colors are the same.
463       gdiplus: Return OutOfMemory when creating a path gradient with NULL points.
464       gdiplus: Return OutOfMemory when creating a path gradient from a NULL path.
465       gdiplus: Add basic implementation of GdipWidenPath.
466       gdiplus: Implement GdipWidenPath for closed figures.
467
468 --
469 Alexandre Julliard
470 julliard@winehq.org