1 The Wine development release 1.7.48 is now available.
3 What's new in this release (see below for details):
4 - Fleshed out OpenMP implementation.
5 - I/O stream support in the MSVCIRT C++ runtime.
6 - Support for pixel snapping in DirectWrite.
7 - More support for OpenGL core contexts.
10 The source is available from the following locations:
12 http://prdownloads.sourceforge.net/wine/wine-1.7.48.tar.bz2
13 http://mirrors.ibiblio.org/wine/source/1.7/wine-1.7.48.tar.bz2
15 Binary packages for various distributions will be available from:
17 http://www.winehq.org/download
19 You will find documentation on http://www.winehq.org/documentation
21 You can also get the current source directly from the git
22 repository. Check http://www.winehq.org/git for details.
24 Wine is available thanks to the work of many people. See the file
25 AUTHORS in the distribution for the complete list.
27 ----------------------------------------------------------------
29 Bugs fixed in 1.7.48 (total 39):
31 11059 Sid Meier's Railroads Demo crashes on startup
32 16519 EssentialPIM: Bold text not rendering correctly
33 17506 Achtung die Kurve: Game doesn't start
34 18191 Notepad corrupts files saved as utf-8 without a byte order mark (BOM)
35 19289 Gtk+/Pango based applications have ugly font rendering or crash on startup
36 19666 Multiple applications start wrong executable if whitespace present in name ('ShellExecute' doesn't quote executable name)(FoxitReader 3.0, GTA2 Manager)
37 22399 Quake III Arena installer: Text area is scrolled at the bottom, and all text is selected
38 26439 Chernobyl terrorist attack demo crashes on start
39 27238 Tesla: The Weather Man demo: movement keys not working (GetKeyState should fallback to GetAsyncKeyState for threads without message queue)
40 31063 Crash bug after finishing conversion in FormatFactory
41 31643 Multiple games and applications crash on unimplemented function vcomp.dll._vcomp_fork (Gothic 3 demo, NeXTA)
42 31984 Multiple games need d3dx9_36.dll.D3DXComputeTangentFrameEx (Starlaxis, Chernobyl Terrorist Attack Demo, The Endless Forest 3)
43 32227 P2kCommander v6.0.0 crashes on startup (Wine's ungif reports app .gif image as broken)
44 33153 DirectX11 games need d3d11.dll.D3D11CreateDeviceAndSwapChain (ARMA III Alpha, Strike Suit Zero, Stalker CoP, Perspective)
45 33989 iexplore.exe crash when logging in to www.roblox.com
46 34356 Multiple applications fail to install or crash on startup due gdiplus enumeration/query failure for GIF encoder support (Magnus 2011 translation dictionaries, Collectorz.com Movie Collector v9.x)
47 34939 Dragon NaturallySpeaking does not run in 64-bit version
48 34947 Creo Elements/Direct Modeling Express 4.0 InstallShield based installer shows oversized "installation completed" setup wizard window
49 35493 IMVU shows loading bar, but will not start.
50 35534 Oblivion: very loud/distorted/horrible collision sounds
51 36336 NaturallySpeaking doesn't work with alsa or pasuspender
52 36966 Turkey - Europe/Istanbul timezone is not detected
53 37129 Clang Static Analyzer: Buffer overflow
54 37281 Lord of The Rings Online: Crashes
55 37449 Lexware Quicken 2014 Deluxe reports error 0x0000054f on startup (Promon Shield DRM needs RtlDecompressBuffer with COMPRESSION_FORMAT_LZNT1 support)
56 38027 HyperStudio 5 (.NET 4.0 app) fails to start, reports 'tiff_get_decode_info unhandled grayscale sample count 2'
57 38697 wineconsole: Cannot enable or disable Insert Mode through user dialog
58 38712 win-key press incorrectly recognized
59 38735 Windows Performance Analyzer from Windows SDK 8.1 Windows Performance Toolkit crashes due to 'IDWriteFontFace::GetGdiCompatibleGlyphMetrics' stub
60 38806 Starcraft Campaign Editor does not scroll to bottom after copying a trigger
61 38848 valgrind shows several uninitialized values in dmime/tests/dmime.c:test_track()
62 38895 Multiple applications fail to load or crash due to incorrect security cookie randomization by loader (IrfanView WebP plugin, Word Viewer 2007)
63 38904 Ufo Aftermath launcher hangs on start (missing "HKLM\Software\Microsoft\Windows NT\CurrentVersion\OpenGLDrivers" registry key)
64 38908 PlanetSide 2 v5.2.4.x launcher process exit causes wineserver crash
65 38913 valgrind shows some definite leaks in d3drm/tests/d3drm.c:
66 38914 valgrind shows uninitialized memory in dlls/dwrite/tests/layout.c
67 38925 ipstats.c:1992 runtime error: index 32 out of bounds for type 'char [32]'
68 38937 Bully: Scholarship Edition crashes on starting a new game (needs vcomp.dll._vcomp_for_static_simple_init implementation)
69 38952 PDF-Xchange Viewer crashes when we launch OCR
71 ----------------------------------------------------------------
75 Aaryaman Vasishta (6):
76 d3drm: Move AddRef from device2->device3.
77 d3drm: Move Release from device2->device3.
78 d3drm: Move QueryInterface from device2->device3.
79 d3drm/tests: Fix leaks while creating device in tests (Valgrind).
80 d3drm: Thunk relevant IDirect3DRMDevice2 stubs to version 3.
81 d3drm: Add stubs for IDirect3DRMDevice methods.
84 po: Update Japanese translation.
85 po: Fix a mistake in Japanese translation.
86 mciseq: Ensure the player thread termination when stopping.
88 Alasdair Sinclair (1):
89 ntdll: Add missing WINAPI to RtlDecompressFragment.
92 user32: Simplify if-else statement.
93 user32: Scroll listbox item completely into view on LB_SETCURSEL.
94 user32/tests: Correct spelling of "Invisible".
96 Alexandre Julliard (2):
97 server: Don't associate a thread to the MJ_CREATE and MJ_CLOSE requests.
98 winebuild: Add DllMain to the list of functions that should be private.
100 Alistair Leslie-Hughes (1):
101 include: Correct spelling of Tessellate.
104 server: Implement JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE.
106 André Hentschel (10):
107 iphlpapi: Fix possible Out-of-bounds write (Coverity).
108 ws2_32: Pass correct buffer length to WS_inet_ntop (Coverity).
109 mcicda: Remove dead code (Coverity).
110 wordpad: Copy the correct amount of data with lstrcpynW (Coverity).
111 notepad: Use character count for GetFileTitleW (Coverity).
112 widl: Remove unused initializer (Clang).
113 krnl386.exe16: Remove unused initializers (Clang).
114 winedbg: Remove dead variable (Clang).
115 dwrite: Remove unused initializer (Clang).
116 winedump: Dump load config when available.
119 po: Update Lithuanian translation.
122 loader: Add HKLM\Software\Microsoft\Windows NT\CurrentVersion\OpenGLDrivers registry key.
123 winsta: Add initial winsta.h.
126 d3dx9_36: Add stub for D3DXComputeTangentFrameEx.
127 d3dx9_36: Add stub for D3DXIntersect.
130 vcomp: Implement stub for _vcomp_fork.
131 vcomp/tests: Add additional tests for _vcomp_fork.
134 msvcp90: Implement time_get<char> ctors and dtors (Valgrind).
135 gdi32: Check for NULL pointer in GetOutlineTextMetrics.
137 Dmitry Timoshkov (15):
138 kernel32: Fix compilation of loader tests with PSDK.
139 kernel32/tests: Add a loader test using minimal PE image that Windows7 is able to load.
140 ole32: Fix a memory leak.
141 include: Add support for NtCurrentTeb and PSDK compiler in 64-bit mode.
142 winex11.drv: On KeymapNotify event also sychronize WinKey state.
143 windowscodecs: Add support for 8bpp grayscale TIFF with 8bpp alpha.
144 gdiplus: Move the burden of supporting GIF encoding to the WIC backend.
145 windowscodecs/tests: Add some tests for loading truncated GIF images.
146 windowscodecs: Don't fail to decode GIF if an image has been already loaded.
147 ntdll: Cache contents of IMAGE_TLS_DIRECTORY instead of saving a directory pointer.
148 windowscodecs: Properly handle empty GIF extension blocks.
149 user32: Add a test to show that fonts returned by SystemParametersInfo(SPI_GETNONCLIENTMETRICS) should be listed by EnumFontFamilies(hdc, NULL).
150 gdi32: Add a test for enumerating substituted fonts.
151 gdi32: EnumFontFamilies should enumerate substituted fonts only when directly asked for.
152 user32: SystemParametersInfo(SPI_GETNONCLIENTMETRICS) should return real font names.
155 ntoskrnl.exe: Improve IoGetDeviceObjectPointer stub to appease SecuROM 5.x.
156 ntdll: Only set the security cookie if it has not already been set.
158 Frédéric Delanoy (2):
159 wineconsole: Leave more room for translations in resource file.
160 po: Update French translation.
163 msi: Check the return value of MSI_QueryGetRecord (Coverity).
164 msi: Fix a couple of memory leaks (Coverity).
165 msi: Add a stub implementation of MsiJoinTransaction.
166 msi/tests: Avoid another test failure on win2k3.
167 ieframe: Implement IViewObject::GetAdvise and IViewObject::SetAdvise.
168 ieframe: Never pass a NULL string pointer with DISPID_STATUSTEXTCHANGE.
169 user32: Add a stub implementation of UnregisterPowerSettingNotification.
170 user32: Return a fake handle from RegisterPowerSettingNotification.
171 server: Make returning used privileges optional in token_access_check.
172 msi/tests: Mark a test result on win2k3 as broken.
173 wininet/tests: Include the error code in a failure message.
174 davclnt: Add stub implementations of DavRegisterAuthCallback and DavUnregisterAuthCallback.
175 iphlpapi: Add a partial implementation of CreateSortedAddressPairs.
176 iphlpapi: Implement a couple of interface identifier conversion functions.
177 include: Add definition of MIB_IF_ROW2.
178 iphlpapi: Implement GetIfEntry2.
179 netprofm: Create a connection point object for INetworkCostManagerEvents.
180 netprofm: Improve the stub for INetworkCostManager::GetDataPlanStatus.
181 netapi32: Implement DavGetHTTPFromUNCPath.
184 d2d1: Implement d2d_factory_CreateRectangleGeometry().
185 d2d1: Also bind the pixel shader and blend state in d2d_brush_bind_resources().
186 d2d1: Introduce a separate function to construct pixel shader constant buffers for brushes.
187 d2d1: Implement d2d_d3d_render_target_FillGeometry().
188 d2d1: Implement d2d_geometry_sink_AddLines().
189 d2d1: Properly trace "vertex_count" in d2d_path_geometry_triangulate().
190 d2d1/tests: Don't call compare_surface() inside ok().
191 d2d1: Implement d2d_geometry_sink_SetFillMode().
192 d2d1: Implement initial support for drawing bezier curves.
193 d2d1: Add some FIXMEs for unimplemented functionality to d2d_d3d_render_target_DrawGlyphRun().
194 d3d10core: Implement d3d10_device_CopySubresourceRegion().
195 d2d1: Add a missing TRACE to d2d_d3d_render_target_FillRectangle().
196 d2d1: Implement d2d_d3d_render_target_FillRoundedRectangle().
197 d2d1: Implement d2d_d3d_render_target_FillEllipse().
198 d2d1: Fix the bitmap DPI scale for bitmap brushes.
199 d2d1: Implement d2d_d3d_render_target_GetPixelFormat().
200 include: Add WIC error codes to winerror.h.
201 d2d1: Also infer the alpha mode in d2d_d3d_render_target_CreateBitmapFromWicBitmap().
204 wineconsole: Rearrange user dialog to make room for new controls and improve resource strings.
205 wineconsole: Allow users to enable or disable Insert Mode via the user dialog.
206 kernel32: Enabling/disabling Insert Mode via the user dialog should take effect immediately.
208 Huw D. M. Davies (15):
209 rpcrt4: Initialize CorrDespIncrement to zero and mark the pre-Vista behaviour as broken.
210 rpcrt4: Set CorrDespIncrement to the size of the (non-range) /robust payload.
211 rpcrt4: Add missing calls to NdrCorrelationInitialize/Free.
212 rpcrt4: Use CorrDespIncrement to skip over the correlation descriptor.
213 rpcrt4: Procedures containing a range within a conformance have a larger correlation descriptor.
214 msi: Fix a registry key leak.
215 msi: Be more selective about which access modes are used to open or create keys.
216 advapi32: Don't call CloseServiceHandle() with an invalid handle.
217 msi: Don't call CloseServiceHandle() with an invalid handle.
218 net: Don't call CloseServiceHandle() with an invalid handle.
219 wbemprox: Don't call CloseServiceHandle() with an invalid handle.
220 mshtml/tests: Fix a crash on Win 2008.
221 winhttp: Fix a reference leak.
222 winhttp: Don't wait for the task thread to exit.
223 winhttp: Implement WINHTTP_OPTION_UNLOAD_NOTIFY_EVENT.
225 Iván Matellanes (21):
226 msvcirt: Implement ios locking control.
227 msvcirt: Implement ios object locking.
228 msvcirt: Implement ios stream locking.
229 msvcirt: Implement ios static locking.
230 msvcirt: Implement ios::flags.
231 msvcirt: Implement ios::setf.
232 msvcirt: Implement ios::unsetf.
233 msvcirt: Implement ios::fill.
234 msvcirt: Implement ios::precision.
235 msvcirt: Implement ios::width.
236 msvcirt: Implement ios::tie.
237 msvcirt: Implement ios::rdbuf.
238 msvcirt: Implement ios::delbuf.
239 msvcirt: Implement ios status-testing functions.
240 msvcirt: Implement ios operators.
241 msvcirt: Add ios format flag masks.
242 msvcirt: Implement ios manipulators.
243 msvcirt: Implement ios::bitalloc.
244 msvcirt: Add support for ios state variables.
245 msvcirt: Add ios instance counter.
246 msvcirt: Correct the statebuf array exports.
249 ieframe: Allow travellog buffer to grow even if we're loading from the history.
250 ieframe: Fixed invalid COM object usage.
251 widl: Don't output C++ default value if the argument is followed by another without default value.
252 include: Added inspectable.idl file.
253 ieframe: Release client site interface before destroying embedding window.
254 ieframe: Added support for OnFocus notifications.
255 ieframe: Improved debug traces.
258 gdi32: Add a helper to map font replacement.
259 gdi32: Add multiple font replacement support.
262 widl: Increase buffer size in typegen.c.
265 po: Update German translation.
268 po: Update Finnish translation.
271 wined3d: Make the core extensions enabling table-based.
272 wined3d: Add more entries to the core extensions table.
273 wined3d: Bind a VAO when using core profile contexts.
274 wined3d: Avoid glBegin() / glEnd() in check_fbo_compat() when possible.
275 wined3d: Don't run check_filter() on core contexts.
276 wined3d: Allow to apply extension emulation wrappers independently.
277 wined3d: Don't crash when emulating GL_EXT_fogcoord.
278 wined3d: Only install emulation wrappers when required.
281 aclocal.m4: Search for otool using AC_CHECK_TOOL.
283 Michael Stefaniuc (6):
284 include: Add IAMVfwCaptureDialogs declaration.
285 qcap: Remove initialization code from QI of VfwCapture.
286 qcap: There can be only ONE QueryInterface in VfwCapture!.
287 qcap: Support COM aggregation in VfwCapture.
288 qcap/tests: Add COM tests for VfwCapture.
289 wined3d: Merge two adjacent ifs with identical condition (PVS-Studio).
292 dwrite: Implement pixel snapping in Draw().
293 dwrite: Check GetGdiCompatibleMetrics() return value (Coverity).
294 dwrite: Implement SetWordWrapping() for layout.
295 dwrite: Handle negative emsize in GetGdiCompatibleMetrics().
296 dwrite: Implement GetMetrics() for trimming sign.
297 dwrite: Remove excessive tracing when forwarding to IDWriteTextFormat1.
298 dwrite: Fix EndFigure notification in GetGlyphRunOutline().
299 po: Update Russian translation.
300 dwrite: Make sure explicit levels are always initialized (Valgrind).
301 dwrite/tests: Fix trimming sign instance leak (Valgrind).
302 dwrite: Fix transform matrix usage for pixel snapping.
303 dwrite: Partially implement GetGdiCompatibleGlyphAdvances().
304 dwrite: Partial implementation of GetGdiCompatibleGlyphMetrics().
305 dwrite: Properly pass measuring mode to renderer.
306 dwrite/tests: Some tests for CreateGdiCompatibleTextLayout().
307 dwrite: Round advances returned from GetGdiCompatibleGlyphPlacements().
308 dwrite: Fix vector transformation in GetGlyphOrientationTransform().
309 dwrite: Aliased texture could only be requested for aliased rendering mode.
310 dwrite: Improve parameter validation in GetGdiCompatibleGlyphAdvances(), add some tests.
311 dwrite/tests: Some tests for bounds returned by GetAlphaTextureBounds().
312 dwrite: Round centered alignment shift for compatible layouts.
313 dwrite/tests: Some tests for isNewline clusters.
314 dwrite: Bitmap render target uses top-down DIB.
315 dwrite: Update cached bitmap size on Resize() as well.
316 shell32: Added GetCurrentProcessExplicitAppUserModelID() stub.
317 webservices: Added WsCreateError stub.
318 user32: Initialize buffer before sending WM_GETTEXT.
319 user32: Don't send WM_GETTEXT from GetWindowText() with invalid buffer length.
320 dwrite/tests: Some tests for GetRecommendedRenderingMode().
321 dwrite: Implement GetRecommendedRenderingMode().
324 shell32: Remove code for separating arguments from file path.
325 shell32: Handle executable with space in path in SHELL_execute.
326 shell32: Fix SHELL_execute code that removes quote arround file name.
327 msvcrt: Don't call DeleteCriticalSection on static critical section.
328 winemac.drv: Release mouse capture when destroying window specified in SetCapture call.
329 mshtml: Test body.offsetHeight value in quirks mode.
332 kernel32: Fix GetComputerName buffer overflow.
334 Sebastian Lackner (30):
335 ntdll: Fix incorrect assignment in assert statement (Coverity).
336 dwrite: Avoid dereferencing NULL pointer for fonts without VDMX.
337 vcomp: Implement omp_get_max_threads and omp_set_num_threads.
338 vcomp: Implement omp_{get,set}_nested.
339 vcomp: Implement _vcomp_set_num_threads and omp_get_thread_num.
340 server: Avoid sending unexpected wakeup with uninitialized cookie value.
341 kernel32/tests: Repeat test for SignalObjectAndWait multiple times to test wineserver wakeup cookie management.
342 configure: Do not assume gcc strength reduce bug when cross-compiling.
343 shell32: Ensure that commandline is null-terminated when no parameters are given.
344 ntdll: Avoid possible deadlock by using _exit() in NtTerminateProcess.
345 vcomp: Add multithreaded implementation for _vcomp_fork.
346 vcomp: Implement _vcomp_barrier.
347 vcomp/tests: Add initial tests.
348 vcomp: Implement _vcomp_sections_init and _vcomp_sections_next.
349 vcomp/tests: Add tests for vcomp sections.
350 vcomp: Allow calls to _vcomp_sections_init outside of parallel environment.
351 vcomp: Fix handling of _vcomp_fork with ifval == FALSE.
352 vcomp: Implement omp_in_parallel and add tests.
353 vcomp: Implement _vcomp_for_static_simple_init and _vcomp_for_static_end.
354 vcomp/tests: Add tests for _vcomp_for_static_simple_init.
355 vcomp: Implement _vcomp_for_static_init.
356 vcomp/tests: Add tests for _vcomp_for_static_init.
357 ntdll/tests: Add basic tests for RtlQueueWorkItem.
358 ntdll: Reimplement RtlQueueWorkItem on top of new threadpool API.
359 vcomp: Implement 32-bit atomic integer functions.
360 vcomp/tests: Add tests for 32-bit atomic integer functions.
361 vcomp: Implement atomic float functions.
362 vcomp/tests: Add tests for atomic float functions.
363 vcomp: Implement atomic double functions.
364 vcomp/tests: Add tests for atomic double functions.
367 winex11.drv: Don't change net_wm maximized state for minimized windows.
370 msvcp110: Fix TRACE msg of tr2 functions.
373 mshtml: Add IHTMLXMLHttpRequest::responseText() method implementation.
374 mshtml: Add IHTMLXMLHttpRequest::status property implementation.
375 mshtml: Add nsChannel_GetResponseStatusText implementation.