wine
14 years agowined3d: Add a separate function for wined3d object initialization.
Henri Verbeet [Sun, 4 Apr 2010 17:51:37 +0000 (19:51 +0200)] 
wined3d: Add a separate function for wined3d object initialization.

14 years agomsvcr90: Run the tests again on w2k and below.
Detlef Riekenberg [Fri, 2 Apr 2010 21:46:08 +0000 (23:46 +0200)] 
msvcr90: Run the tests again on w2k and below.

14 years agows2_32: In setsockopt implement IPV6_ADD_MEMBERSHIP and IPV6_DROP_MEMBERSHIP only...
Stefan Leichter [Fri, 2 Apr 2010 17:54:44 +0000 (19:54 +0200)] 
ws2_32: In setsockopt implement IPV6_ADD_MEMBERSHIP and IPV6_DROP_MEMBERSHIP only when supported.

14 years agongen.exe: Add stubbed command.
Vincent Povirk [Fri, 2 Apr 2010 15:19:18 +0000 (10:19 -0500)] 
ngen.exe: Add stubbed command.

14 years agowinemaker: Add German translation of the manpage.
André Hentschel [Sat, 3 Apr 2010 13:53:43 +0000 (15:53 +0200)] 
winemaker: Add German translation of the manpage.

14 years agoserver: Add German translation of the manpage.
André Hentschel [Sat, 3 Apr 2010 13:53:19 +0000 (15:53 +0200)] 
server: Add German translation of the manpage.

14 years agowinedump: Update manpage.
André Hentschel [Fri, 2 Apr 2010 16:03:01 +0000 (18:03 +0200)] 
winedump: Update manpage.

14 years agowinemaker: Fix manpage.
André Hentschel [Fri, 2 Apr 2010 16:02:53 +0000 (18:02 +0200)] 
winemaker: Fix manpage.

14 years agoinclude: Try harder to redefine u_long, and avoid using it in headers as far as possible.
Alexandre Julliard [Sat, 3 Apr 2010 16:09:18 +0000 (18:09 +0200)] 
include: Try harder to redefine u_long, and avoid using it in headers as far as possible.

14 years agodpwsockx: Use standard Win32 types instead of the BSD ones.
Alexandre Julliard [Sat, 3 Apr 2010 16:08:24 +0000 (18:08 +0200)] 
dpwsockx: Use standard Win32 types instead of the BSD ones.

14 years agorpcrt4: Replace the alignment macros by inline functions.
Alexandre Julliard [Fri, 2 Apr 2010 19:54:55 +0000 (21:54 +0200)] 
rpcrt4: Replace the alignment macros by inline functions.

14 years agorpcrt4: Fix the pointer alignment macros for 64-bit.
Alexandre Julliard [Fri, 2 Apr 2010 19:38:32 +0000 (21:38 +0200)] 
rpcrt4: Fix the pointer alignment macros for 64-bit.

14 years agoRelease 1.1.42. wine-1.1.42
Alexandre Julliard [Fri, 2 Apr 2010 17:43:45 +0000 (19:43 +0200)] 
Release 1.1.42.

14 years agogdiplus: Implement GdipFlush.
Vincent Povirk [Fri, 2 Apr 2010 14:19:13 +0000 (09:19 -0500)] 
gdiplus: Implement GdipFlush.

14 years agomshtml/tests: Don't crash when Gecko is missing.
Alexandre Julliard [Fri, 2 Apr 2010 14:30:06 +0000 (16:30 +0200)] 
mshtml/tests: Don't crash when Gecko is missing.

14 years agouser32/tests: Use the correct type for the bits pointer in CreateDIBSection calls.
Alexandre Julliard [Fri, 2 Apr 2010 13:40:55 +0000 (15:40 +0200)] 
user32/tests: Use the correct type for the bits pointer in CreateDIBSection calls.

14 years agoshlwapi: Fix SHCreateWorkerWindowA for 64-bit.
Alexandre Julliard [Fri, 2 Apr 2010 13:05:58 +0000 (15:05 +0200)] 
shlwapi: Fix SHCreateWorkerWindowA for 64-bit.

14 years agowine.inf: Add another .Net Framework key.
Louis Lenders [Fri, 2 Apr 2010 12:05:19 +0000 (14:05 +0200)] 
wine.inf: Add another .Net Framework key.

14 years agowinex11.drv: Clip rectangle values to 16-bit limits.
Vincent Povirk [Thu, 1 Apr 2010 21:57:14 +0000 (16:57 -0500)] 
winex11.drv: Clip rectangle values to 16-bit limits.

14 years agoadvapi32: Fix compiler warnings with flag -Wcast-qual.
Mikhail Maroukhine [Thu, 1 Apr 2010 16:24:15 +0000 (23:24 +0700)] 
advapi32: Fix compiler warnings with flag -Wcast-qual.

14 years agowined3d: Remove the swapchain parameter from fb_copy_to_texture_hwstretch in order...
Roderick Colenbrander [Thu, 1 Apr 2010 21:58:50 +0000 (23:58 +0200)] 
wined3d: Remove the swapchain parameter from fb_copy_to_texture_hwstretch in order to unify all blit calls.

14 years agowined3d: Move upsideDown calculation to blit implementation.
Roderick Colenbrander [Thu, 1 Apr 2010 21:58:49 +0000 (23:58 +0200)] 
wined3d: Move upsideDown calculation to blit implementation.

14 years agontdll/tests: Skip a couple of exception tests that crash on Wow64.
Alexandre Julliard [Fri, 2 Apr 2010 11:35:06 +0000 (13:35 +0200)] 
ntdll/tests: Skip a couple of exception tests that crash on Wow64.

14 years agomsi: Reset the MsiEnumPatchesExW index on failure.
Hans Leidekker [Fri, 2 Apr 2010 08:43:08 +0000 (10:43 +0200)] 
msi: Reset the MsiEnumPatchesExW index on failure.

14 years agomsi: Add tests for registering and unregistering MIME info.
Hans Leidekker [Fri, 2 Apr 2010 08:40:28 +0000 (10:40 +0200)] 
msi: Add tests for registering and unregistering MIME info.

14 years agomsi: Implement the UnregisterMIMEInfo standard action.
Hans Leidekker [Fri, 2 Apr 2010 08:40:07 +0000 (09:40 +0100)] 
msi: Implement the UnregisterMIMEInfo standard action.

14 years agomsi: Add tests for registering and unregistering extension info.
Hans Leidekker [Fri, 2 Apr 2010 08:39:44 +0000 (10:39 +0200)] 
msi: Add tests for registering and unregistering extension info.

14 years agomsi: Implement the UnregisterExtensionInfo standard action.
Hans Leidekker [Fri, 2 Apr 2010 08:39:20 +0000 (10:39 +0200)] 
msi: Implement the UnregisterExtensionInfo standard action.

14 years agomsi: Implement the UnregisterProgIdInfo standard action.
Hans Leidekker [Fri, 2 Apr 2010 08:38:57 +0000 (10:38 +0200)] 
msi: Implement the UnregisterProgIdInfo standard action.

14 years agomsi: Add tests for registering and unregistering class info.
Hans Leidekker [Fri, 2 Apr 2010 08:38:35 +0000 (10:38 +0200)] 
msi: Add tests for registering and unregistering class info.

14 years agomsi: Set the action taken in the RegisterExtensionInfo and RegisterClassInfo actions.
Hans Leidekker [Fri, 2 Apr 2010 08:38:12 +0000 (10:38 +0200)] 
msi: Set the action taken in the RegisterExtensionInfo and RegisterClassInfo actions.

14 years agomsi: Implement the UnregisterClassInfo standard action.
Hans Leidekker [Fri, 2 Apr 2010 08:37:50 +0000 (10:37 +0200)] 
msi: Implement the UnregisterClassInfo standard action.

14 years agoserver: Disallow all operations on deleted registry keys.
Alexandre Julliard [Fri, 2 Apr 2010 10:43:31 +0000 (12:43 +0200)] 
server: Disallow all operations on deleted registry keys.

14 years agoadvapi32: Add support for the KEY_WOW64_32KEY flag in RegOpenKey on 64-bit.
Alexandre Julliard [Fri, 2 Apr 2010 10:14:21 +0000 (12:14 +0200)] 
advapi32: Add support for the KEY_WOW64_32KEY flag in RegOpenKey on 64-bit.

14 years agoadvapi32: Add support for the KEY_WOW64_32KEY flag in RegCreateKey on 64-bit.
Alexandre Julliard [Fri, 2 Apr 2010 09:51:15 +0000 (11:51 +0200)] 
advapi32: Add support for the KEY_WOW64_32KEY flag in RegCreateKey on 64-bit.

14 years agoadvapi32: Don't use the static Unicode buffer for value names since they can be large...
Alexandre Julliard [Fri, 2 Apr 2010 09:50:12 +0000 (11:50 +0200)] 
advapi32: Don't use the static Unicode buffer for value names since they can be larger than MAX_PATH.

14 years agoserver: Update the registry key and value name length limits to the now documented...
Alexandre Julliard [Fri, 2 Apr 2010 09:48:14 +0000 (11:48 +0200)] 
server: Update the registry key and value name length limits to the now documented values.

14 years agod3dx9_36: Improve FIXMEs and TRACEs for font.
Christian Costa [Fri, 2 Apr 2010 06:54:54 +0000 (08:54 +0200)] 
d3dx9_36: Improve FIXMEs and TRACEs for font.

14 years agod3dx9_36: Improve FIXMEs and TRACEs for sprite.
Christian Costa [Fri, 2 Apr 2010 06:54:48 +0000 (08:54 +0200)] 
d3dx9_36: Improve FIXMEs and TRACEs for sprite.

14 years agod3dx9_36: Implement D3DXCreateLine and add stubbed interface for ID3DXLine + tests.
Christian Costa [Fri, 2 Apr 2010 06:54:42 +0000 (08:54 +0200)] 
d3dx9_36: Implement D3DXCreateLine and add stubbed interface for ID3DXLine + tests.

14 years agows2_32: Partly implement level IPPROTO_IPV6 of getsockopt.
Stefan Leichter [Thu, 1 Apr 2010 21:50:54 +0000 (23:50 +0200)] 
ws2_32: Partly implement level IPPROTO_IPV6 of getsockopt.

14 years agoopenal32: Add support for ALC_EXT_thread_local_context.
Chris Robinson [Thu, 1 Apr 2010 19:38:24 +0000 (12:38 -0700)] 
openal32: Add support for ALC_EXT_thread_local_context.

14 years agoopenal32: Remove the ALCcontext wrapper.
Chris Robinson [Thu, 1 Apr 2010 19:43:49 +0000 (12:43 -0700)] 
openal32: Remove the ALCcontext wrapper.

Assume the function pointers retrieved by alGetProcAddress are context
independent. This is not likely to change in any implementation we
care about any time soon.

14 years agowined3d: Verify all render states have a handler.
Henri Verbeet [Thu, 1 Apr 2010 19:28:55 +0000 (21:28 +0200)] 
wined3d: Verify all render states have a handler.

14 years agowined3d: Move handling of the unimplemented WINED3DRS_STIPPLEPATTERN states to ddraw.
Henri Verbeet [Thu, 1 Apr 2010 19:28:54 +0000 (21:28 +0200)] 
wined3d: Move handling of the unimplemented WINED3DRS_STIPPLEPATTERN states to ddraw.

14 years agowined3d: Move handling of the unimplemented WINED3DRS_BORDERCOLOR state to ddraw.
Henri Verbeet [Thu, 1 Apr 2010 19:28:53 +0000 (21:28 +0200)] 
wined3d: Move handling of the unimplemented WINED3DRS_BORDERCOLOR state to ddraw.

14 years agowined3d: Remove some unused render states.
Henri Verbeet [Thu, 1 Apr 2010 19:28:52 +0000 (21:28 +0200)] 
wined3d: Remove some unused render states.

14 years agowined3d: Add a state handler for WINED3DRS_ZVISIBLE.
Henri Verbeet [Thu, 1 Apr 2010 19:28:51 +0000 (21:28 +0200)] 
wined3d: Add a state handler for WINED3DRS_ZVISIBLE.

14 years agowined3d: Verify state representatives represent themselves.
Henri Verbeet [Thu, 1 Apr 2010 19:28:50 +0000 (21:28 +0200)] 
wined3d: Verify state representatives represent themselves.

This ensures there's no multilevel indirection in the state table.

14 years agodbghelp: When handling a P augmentation in FDE/DIE parsing, throw away the DW_EH_indi...
Eric Pouech [Thu, 1 Apr 2010 19:24:26 +0000 (21:24 +0200)] 
dbghelp: When handling a P augmentation in FDE/DIE parsing, throw away the DW_EH_indirect flag, as we don't handle the result.

It's needed as long as we don't support DW_EH_indirect while reading encoded values.

14 years agodbghelp: Extend dwarf stack unwinding by reading information out of .debug_frame...
Eric Pouech [Thu, 1 Apr 2010 19:24:20 +0000 (21:24 +0200)] 
dbghelp: Extend dwarf stack unwinding by reading information out of .debug_frame sections.

Implement dwarf stack unwinding for i386 CPU.

14 years agodbghelp: Store delta used for re-locating a module.
Eric Pouech [Thu, 1 Apr 2010 19:24:14 +0000 (21:24 +0200)] 
dbghelp: Store delta used for re-locating a module.

14 years agodbghelp: Implement the new register methods for x86.
Eric Pouech [Thu, 1 Apr 2010 19:24:07 +0000 (21:24 +0200)] 
dbghelp: Implement the new register methods for x86.

14 years agoserver: Update trace for new error codes.
Alexandre Julliard [Thu, 1 Apr 2010 18:30:49 +0000 (20:30 +0200)] 
server: Update trace for new error codes.

14 years agoserver: Fix 64-bit alignment of the context structure.
Alexandre Julliard [Thu, 1 Apr 2010 17:56:09 +0000 (19:56 +0200)] 
server: Fix 64-bit alignment of the context structure.

14 years agooleaut32: Only unregister those types that were registered.
Huw Davies [Thu, 1 Apr 2010 12:07:58 +0000 (13:07 +0100)] 
oleaut32: Only unregister those types that were registered.

14 years agooleaut32: Only oleautomation interfaces as well as all dispinterfaces should be regis...
Huw Davies [Thu, 1 Apr 2010 12:02:17 +0000 (13:02 +0100)] 
oleaut32: Only oleautomation interfaces as well as all dispinterfaces should be registered.

14 years agoserver: Set a proper error code when dup_fd_object fails.
Alexandre Julliard [Thu, 1 Apr 2010 13:40:23 +0000 (15:40 +0200)] 
server: Set a proper error code when dup_fd_object fails.

14 years agomsvcrt: Added implementation of _controlfp_s.
Piotr Caban [Thu, 1 Apr 2010 10:41:06 +0000 (12:41 +0200)] 
msvcrt: Added implementation of _controlfp_s.

14 years agomsvcrt: Fix _get/_set_invalid_parameter_handler implementation.
Piotr Caban [Thu, 1 Apr 2010 10:40:22 +0000 (12:40 +0200)] 
msvcrt: Fix _get/_set_invalid_parameter_handler implementation.

14 years agomsvcrt: Move invalid parameter tests to msvcr90.
Piotr Caban [Thu, 1 Apr 2010 10:39:50 +0000 (12:39 +0200)] 
msvcrt: Move invalid parameter tests to msvcr90.

14 years agowined3d: Remove some superfluous white space and braces from the card selection funct...
Henri Verbeet [Thu, 1 Apr 2010 09:34:49 +0000 (11:34 +0200)] 
wined3d: Remove some superfluous white space and braces from the card selection functions.

14 years agowined3d: Add a state table entry for WINED3DRS_INDEXEDVERTEXBLENDENABLE.
Henri Verbeet [Thu, 1 Apr 2010 09:34:48 +0000 (11:34 +0200)] 
wined3d: Add a state table entry for WINED3DRS_INDEXEDVERTEXBLENDENABLE.

14 years agowined3d: Verify each state table entry has either a handler or a representative.
Henri Verbeet [Thu, 1 Apr 2010 09:34:47 +0000 (11:34 +0200)] 
wined3d: Verify each state table entry has either a handler or a representative.

14 years agowined3d: Explicitly set the state handler to NULL for states with a representative.
Henri Verbeet [Thu, 1 Apr 2010 09:34:46 +0000 (11:34 +0200)] 
wined3d: Explicitly set the state handler to NULL for states with a representative.

We should never call the handler for states that have a rep.

14 years agowined3d: Use the rep instead of the apply function to determine if a state is used.
Henri Verbeet [Thu, 1 Apr 2010 09:34:45 +0000 (11:34 +0200)] 
wined3d: Use the rep instead of the apply function to determine if a state is used.

14 years agowined3d: Don't call directly into the state table.
Henri Verbeet [Thu, 1 Apr 2010 09:34:44 +0000 (11:34 +0200)] 
wined3d: Don't call directly into the state table.

14 years agoserver: Don't set the Wow64 flag on a Wow6432Node since it's already a 32-bit node.
Alexandre Julliard [Thu, 1 Apr 2010 12:09:12 +0000 (14:09 +0200)] 
server: Don't set the Wow64 flag on a Wow6432Node since it's already a 32-bit node.

14 years agouser32: Fix compiler warnings with flag -Wcast-qual.
Mikhail Maroukhine [Fri, 26 Mar 2010 20:53:36 +0000 (02:53 +0600)] 
user32: Fix compiler warnings with flag -Wcast-qual.

14 years agorpcrt4: Fix compiler warnings with flag -Wcast-qual.
Mikhail Maroukhine [Fri, 26 Mar 2010 20:53:36 +0000 (02:53 +0600)] 
rpcrt4: Fix compiler warnings with flag -Wcast-qual.

14 years agoquartz: Fix compiler warnings with flag -Wcast-qual.
Mikhail Maroukhine [Fri, 26 Mar 2010 20:53:36 +0000 (02:53 +0600)] 
quartz: Fix compiler warnings with flag -Wcast-qual.

14 years agoimm32: Fix compiler warnings with flag -Wcast-qual.
Mikhail Maroukhine [Fri, 26 Mar 2010 20:53:36 +0000 (02:53 +0600)] 
imm32: Fix compiler warnings with flag -Wcast-qual.

14 years agorsaenh/tests: Fix compiler warnings with flag -Wcast-qual.
Mikhail Maroukhine [Wed, 31 Mar 2010 18:41:23 +0000 (01:41 +0700)] 
rsaenh/tests: Fix compiler warnings with flag -Wcast-qual.

14 years agowinmm/tests: Add more MCI tests.
Jörg Höhle [Mon, 29 Mar 2010 13:53:02 +0000 (15:53 +0200)] 
winmm/tests: Add more MCI tests.

14 years agomciwave: MCI Status returns string resource when appropriate.
Jörg Höhle [Sat, 21 Nov 2009 08:24:07 +0000 (09:24 +0100)] 
mciwave: MCI Status returns string resource when appropriate.

14 years agomciwave: MCI Set Input|Output allows to select wave device.
Jörg Höhle [Fri, 20 Nov 2009 19:55:22 +0000 (20:55 +0100)] 
mciwave: MCI Set Input|Output allows to select wave device.

14 years agowinmm: Improve MCI's Sysinfo string command.
Jörg Höhle [Tue, 17 Nov 2009 23:58:17 +0000 (00:58 +0100)] 
winmm: Improve MCI's Sysinfo string command.

14 years agowinmm: Improve MCI's Sysinfo command.
Jörg Höhle [Tue, 17 Nov 2009 21:07:55 +0000 (22:07 +0100)] 
winmm: Improve MCI's Sysinfo command.

14 years agowinmm: Support MCI "close all" command.
Jörg Höhle [Wed, 31 Mar 2010 14:08:48 +0000 (16:08 +0200)] 
winmm: Support MCI "close all" command.

This is not yet generalized to "pause all" or "stop all".

14 years agowinmm: Clean up mapper code.
Maarten Lankhorst [Wed, 31 Mar 2010 19:13:33 +0000 (21:13 +0200)] 
winmm: Clean up mapper code.

14 years agowinmm: Clean up MMDRV_Init.
Maarten Lankhorst [Wed, 31 Mar 2010 18:33:45 +0000 (20:33 +0200)] 
winmm: Clean up MMDRV_Init.

14 years agowinmm: Remove some dead code.
Maarten Lankhorst [Wed, 31 Mar 2010 18:19:51 +0000 (20:19 +0200)] 
winmm: Remove some dead code.

14 years agowinmm: Defer loading drivers until they are requested.
Maarten Lankhorst [Wed, 31 Mar 2010 18:19:35 +0000 (20:19 +0200)] 
winmm: Defer loading drivers until they are requested.

14 years agokernel32: Don't set last error on success in OpenConsoleW.
Andrew Nguyen [Thu, 1 Apr 2010 00:54:07 +0000 (18:54 -0600)] 
kernel32: Don't set last error on success in OpenConsoleW.

14 years agokernel32: Improve parameter validation in OpenConsoleW.
Andrew Nguyen [Thu, 1 Apr 2010 00:53:59 +0000 (18:53 -0600)] 
kernel32: Improve parameter validation in OpenConsoleW.

14 years agoadvapi32: Add test for RegDeleteValue.
Vincent Povirk [Wed, 31 Mar 2010 22:29:56 +0000 (17:29 -0500)] 
advapi32: Add test for RegDeleteValue.

14 years agoadvapi32: Add tests for registry keys that have been deleted.
Vincent Povirk [Wed, 31 Mar 2010 22:01:22 +0000 (17:01 -0500)] 
advapi32: Add tests for registry keys that have been deleted.

14 years agod3dx9_36: Add stub for D3DXLoadVolumeFromMemory.
Christian Costa [Wed, 31 Mar 2010 20:45:27 +0000 (22:45 +0200)] 
d3dx9_36: Add stub for D3DXLoadVolumeFromMemory.

14 years agoc2man: Replace link to documentation.sgml.
André Hentschel [Wed, 31 Mar 2010 17:19:39 +0000 (19:19 +0200)] 
c2man: Replace link to documentation.sgml.

14 years agoloader/manpages: Replace all occurrence of bugs.sgml.
André Hentschel [Wed, 31 Mar 2010 14:08:03 +0000 (16:08 +0200)] 
loader/manpages: Replace all occurrence of bugs.sgml.

14 years agodocumentation: Remove all occurrence of bugs.sgml.
André Hentschel [Wed, 31 Mar 2010 14:07:34 +0000 (16:07 +0200)] 
documentation: Remove all occurrence of bugs.sgml.

14 years agorsaenh: Add some tests for the hash functions.
Hans Leidekker [Wed, 31 Mar 2010 13:20:59 +0000 (15:20 +0200)] 
rsaenh: Add some tests for the hash functions.

14 years agowined3d: Add a state table entry for WINED3DRS_TWEENFACTOR.
Henri Verbeet [Wed, 31 Mar 2010 09:29:01 +0000 (11:29 +0200)] 
wined3d: Add a state table entry for WINED3DRS_TWEENFACTOR.

14 years agowined3d: Print a FIXME/WARN for all unsupported vertex blend flags.
Henri Verbeet [Wed, 31 Mar 2010 09:29:00 +0000 (11:29 +0200)] 
wined3d: Print a FIXME/WARN for all unsupported vertex blend flags.

14 years agowined3d: Remove some unused / duplicate render states.
Henri Verbeet [Wed, 31 Mar 2010 09:28:59 +0000 (11:28 +0200)] 
wined3d: Remove some unused / duplicate render states.

14 years agowined3d: Remove a redundant initialization in IWineD3DDeviceImpl_UpdateSurface().
Henri Verbeet [Wed, 31 Mar 2010 09:28:58 +0000 (11:28 +0200)] 
wined3d: Remove a redundant initialization in IWineD3DDeviceImpl_UpdateSurface().

14 years agowined3d: Get rid of some mostly useless local variables in IWineD3DDeviceImpl_UpdateS...
Henri Verbeet [Wed, 31 Mar 2010 09:28:57 +0000 (11:28 +0200)] 
wined3d: Get rid of some mostly useless local variables in IWineD3DDeviceImpl_UpdateSurface().

14 years agowined3d: Cleanup variable naming in IWineD3DDeviceImpl_UpdateSurface().
Henri Verbeet [Wed, 31 Mar 2010 09:28:56 +0000 (11:28 +0200)] 
wined3d: Cleanup variable naming in IWineD3DDeviceImpl_UpdateSurface().

14 years agod3d9/tests: Initialize a variable (Coverity).
Paul Vriens [Wed, 31 Mar 2010 08:54:37 +0000 (10:54 +0200)] 
d3d9/tests: Initialize a variable (Coverity).

14 years agowined3d: Use FBOs when the onscreen depth stencil format isn't suitable.
Stefan Dösinger [Sun, 28 Mar 2010 14:42:32 +0000 (16:42 +0200)] 
wined3d: Use FBOs when the onscreen depth stencil format isn't suitable.

This allows proper support of float depth buffers when rendering to onscreen surfaces.